|
⇤ ← Revision 1 as of 2006-05-08 19:55:28
Size: 63
Comment:
|
Size: 3942
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 1: | Line 1: |
| AlgorithmQuiz/MineSweeper/angss에 대해 써주세요. | AlgorithmQuiz/MineSweeper/angss |
| Line 3: | Line 3: |
| ^^ | {{{ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /** * Excercise Logic skill * @since 2006.5.3 * @author angss * TODO 키보드에서 받은 값의 크기만큼의 지뢰밭을 표시한다. N*M크기. * o: 지뢰없는 밭. * *: 지뢰. * */ public class MinesweeperTest2 { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { String sin = null; char ch = 0; char[][] cfinal = new char[10][10]; String[] ct = null; char count = '0'; BufferedReader stdin1 = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter a line: "); if((sin = stdin1.readLine())!= null) { /* * TODO 입력 받은 지뢰 밭을 그려주기. */ ct = sin.split(" "); for(int a=0; a < ct.length; a++) { for (int i = 0; i < ct[a].length(); i++) { ch = ct[a].charAt(i); if ( ch == '*' ) cfinal[a][i] = ch; else cfinal[a][i] = '0'; System.out.print(cfinal[a][i]); } System.out.println(""); } // MS_Search sr = new MS_Search(); // sr.search(); /** * TODO 지뢰 갯수가 찍히는 부분 */ for(int b=0; b < ct.length; b++) { if (b == 0) { System.out.println(""); System.out.println("Field #" + b+1); } else { for (int i = 0; i < ct[b].length() ; i++) { if(cfinal[b][i] == '*') { for (int j = b-1; j < b+2; j++) { if(j >= 0) { for (int k = i-1; k < i+2; k++) { if(k>=0) { if(b==j && i==k) { cfinal[j][k] = '*'; } else { count = cfinal[j][k]; if ( count != '*') { count++; cfinal[j][k] = count; } } } } //k for() loop End. } } //j for() loop End. } //if(cfinal[b][i] == '*') End. } } //else End. } /** * TODO 지뢰을 찾은 배열을 화면에 표시한다. */ for(int c=1; c < ct.length; c++) { for (int i = 0; i < ct[c].length(); i++) { System.out.print(cfinal[c][i]); } System.out.println(""); } } } } }}} |
AlgorithmQuiz/MineSweeper/angss
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/**
* Excercise Logic skill
* @since 2006.5.3
* @author angss
* TODO 키보드에서 받은 값의 크기만큼의 지뢰밭을 표시한다. N*M크기.
* o: 지뢰없는 밭.
* *: 지뢰.
*
*/
public class MinesweeperTest2
{
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException
{
String sin = null;
char ch = 0;
char[][] cfinal = new char[10][10];
String[] ct = null;
char count = '0';
BufferedReader stdin1 = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Enter a line: ");
if((sin = stdin1.readLine())!= null)
{
/*
* TODO 입력 받은 지뢰 밭을 그려주기.
*/
ct = sin.split(" ");
for(int a=0; a < ct.length; a++)
{
for (int i = 0; i < ct[a].length(); i++)
{
ch = ct[a].charAt(i);
if ( ch == '*' )
cfinal[a][i] = ch;
else
cfinal[a][i] = '0';
System.out.print(cfinal[a][i]);
}
System.out.println("");
}
// MS_Search sr = new MS_Search();
// sr.search();
/**
* TODO 지뢰 갯수가 찍히는 부분
*/
for(int b=0; b < ct.length; b++)
{
if (b == 0)
{
System.out.println("");
System.out.println("Field #" + b+1);
}
else
{
for (int i = 0; i < ct[b].length() ; i++)
{
if(cfinal[b][i] == '*')
{
for (int j = b-1; j < b+2; j++)
{
if(j >= 0)
{
for (int k = i-1; k < i+2; k++)
{
if(k>=0)
{
if(b==j && i==k)
{
cfinal[j][k] = '*';
}
else
{
count = cfinal[j][k];
if ( count != '*')
{
count++;
cfinal[j][k] = count;
}
}
}
} //k for() loop End.
}
} //j for() loop End.
} //if(cfinal[b][i] == '*') End.
}
} //else End.
}
/**
* TODO 지뢰을 찾은 배열을 화면에 표시한다.
*/
for(int c=1; c < ct.length; c++)
{
for (int i = 0; i < ct[c].length(); i++)
{
System.out.print(cfinal[c][i]);
}
System.out.println("");
}
}
}
}
BioHackersNet