Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package wordsearch;
- import java.io.IOException;
- public class FindGod
- {
- public static void main(String[] args) throws IOException
- {
- int w = 40;
- int h = 30;
- int[][] grid = new int[w][h];
- int[] dx = {1,1,0,-1,-1,-1,0,1};
- int[] dy = {0,-1,-1,-1,0,1,1,1};
- char[] charset = {'G','O','D'};
- for(int y=0 ; y<h ; y++)
- for(int x=0 ; x<w ; x++)
- grid[x][y] = 1;
- int solX = (int)(Math.random()*(w-8)+4);
- int solY = (int)(Math.random()*(h-8)+4);
- int solD = (int)(Math.random()*8);
- for(int j=0 ; j<3 ; j++)
- grid[solX+j*dx[solD]][solY+j*dy[solD]] = j;
- for(int i=0 ; i<w*h*4 ; i++)
- {
- int x = (int)(Math.random()*(w-4)+2);
- int y = (int)(Math.random()*(h-4)+2);
- int c = (int)(Math.random()*3);
- boolean fit = true;
- for(int d=0 ; d<8 ; d++)
- if((2-c == grid[x+2*dx[d]][y+2*dy[d]] && grid[x+dx[d]][y+dy[d]] == 1)
- || (c == 1 && 2-grid[x-dx[d]][y-dy[d]] == grid[x+dx[d]][y+dy[d]]) )
- fit = false;
- for(int j=0 ; j<3 ; j++)
- if(x == solX+j*dx[solD] && y==solY+j*dy[solD])
- fit = false;
- if(fit)
- grid[x][y] = c;
- }
- for(int y=2 ; y<h-2 ; y++)
- {
- for(int x=2 ; x<w-2 ; x++)
- System.out.print(" "+charset[grid[x][y]]);
- System.out.println();
- }
- System.in.read();
- System.out.println((solX-1)+","+(solY-1)+","+solD);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement