Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- public class C0157_Easy {
- private static final int[][] wins = new int[][] { {0, 1, 2}, {3, 4, 5}, {6, 7, 8}, {0, 3, 6}, {1, 4, 7}, {2, 5, 8}, {0, 4, 8}, {2, 4, 6} };
- public static void main(String[] args) {
- boolean hasPrinted = false;
- int w = 0;
- String[] lines = getInput();
- String s = "";
- for(int i = 1; i < lines.length; i++) s += lines[i];
- for(int i = 0; i < wins.length; i++){
- if(s.charAt(wins[i][0]) == lines[0].charAt(0) && s.charAt(wins[i][1]) == lines[0].charAt(0) && s.charAt(wins[i][2]) != lines[0].charAt(0) && s.charAt(wins[i][2]) == '-'){
- w++;
- printBoard(s.substring(0, wins[i][2]) + lines[0].charAt(0) + s.substring(wins[i][2]+1, s.length()), w);
- hasPrinted = true;
- } else if(s.charAt(wins[i][0]) == lines[0].charAt(0) && s.charAt(wins[i][1]) != lines[0].charAt(0) && s.charAt(wins[i][2]) == lines[0].charAt(0) && s.charAt(wins[i][1]) == '-'){
- w++;
- printBoard(s.substring(0, wins[i][1]) + lines[0].charAt(0) + s.substring(wins[i][1]+1, s.length()), w);
- hasPrinted = true;
- } else if(s.charAt(wins[i][0]) != lines[0].charAt(0) && s.charAt(wins[i][1]) == lines[0].charAt(0) && s.charAt(wins[i][2]) == lines[0].charAt(0) && s.charAt(wins[i][0]) == '-'){
- w++;
- printBoard(s.substring(0, wins[i][0]) + lines[0].charAt(0) + s.substring(wins[i][0]+1, s.length()), w);
- hasPrinted = true;
- }
- }
- if(!hasPrinted) System.out.println("No possible winning moves were found.");
- System.out.println("A total of " + w + " possible winning moves were found.");
- }
- private static void printBoard(String s, int n){
- System.out.println(" " + s.substring(0, 3) + " ");
- System.out.println(" " + s.substring(3, 6) + " ");
- System.out.println(" " + s.substring(6, 9) + " ");
- System.out.println("-----");
- }
- private static String[] getInput(){
- String[] lines = new String[4];
- Scanner in = new Scanner(System.in);
- for(int i = 0; i < lines.length; i++){
- System.out.print("Line " + i + ": ");
- lines[i] = in.nextLine();
- if(i < 1){
- if(lines[i].length() != 1) i--;
- } else{
- if(lines[i].length() != 3) i--;
- }
- }
- return lines;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement