Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- class SolitarePebbles2 {
- private static Scanner scanner;
- public static void main(String[] args){
- new SolitarePebbles2().view();
- }
- private void view() {
- scanner = new Scanner(System.in);
- int NumberOfTables = scanner.nextInt();
- String[] CurrentTable = new String[NumberOfTables + 1];
- for(int i = 0 ; i < CurrentTable.length; i++){
- CurrentTable[i] = scanner.nextLine();
- }
- SolitarePebbles2.controller(CurrentTable);
- }
- private static void controller(String[] currentTable) {
- int remainingValue[] = new int[currentTable.length];
- int compareValue1 = 0 ,compareValue2 = 0;
- for(int i = 0 ; i < currentTable.length ; i++ ){
- compareValue1 = intcheckLeft(currentTable[i]);
- compareValue2 = intcheckRight(currentTable[i]);
- if(compareValue1 > compareValue2){remainingValue[i] = compareValue2;}
- else if(compareValue2 > compareValue1){remainingValue[i] = compareValue1;}
- else{remainingValue[i] = compareValue1;}
- }
- for(int i = 0 ; i < remainingValue.length ; i++ ){
- System.out.println(remainingValue[i]);
- }
- }
- private static int intcheckRight(String currentTable) {
- int remainingPebles = 0;
- char[] tableCharArray = currentTable.toCharArray();
- for(int i = 0 ; i < currentTable.length() ; i++){
- if(tableCharArray[i] == 'o'){
- if(i > 1 && tableCharArray[i-1] == 'o' && tableCharArray[i-2] == '-'){
- tableCharArray[i] = '-';
- tableCharArray[i - 1] = '-';
- tableCharArray[i - 2] = 'o';
- i = -1;
- }
- else if(i > 1 && i < 20 && tableCharArray[i+1] == 'o' && tableCharArray[i-1] == '-'){
- tableCharArray[i] = '-';
- tableCharArray[i + 1] = '-';
- tableCharArray[i - 1] = 'o';
- i = -1;
- }
- else if(i == 0 && tableCharArray[i+1] == 'o' && tableCharArray[i+2] == '-'){
- tableCharArray[i] = '-';
- tableCharArray[i + 1] = '-';
- tableCharArray[i + 2] = 'o';
- i = -1;
- }
- else if(i == currentTable.length() && tableCharArray[i-1] == 'o' && tableCharArray[i-2] == '-'){
- tableCharArray[i] = '-';
- tableCharArray[i - 1] = '-';
- tableCharArray[i - 2] = 'o';
- i = -1;
- }
- }
- }
- for(int i = 0 ; i < currentTable.length() ; i++){
- if(tableCharArray[i] == 'o'){
- remainingPebles++;
- }
- }
- return remainingPebles;
- }
- private static int intcheckLeft(String currentTable) {
- int remainingPebles = 0;
- char[] tableCharArray = currentTable.toCharArray();
- for(int i = 0 ; i < currentTable.length() ; i++){
- if(tableCharArray[i] == 'o'){
- if(i < 20 && tableCharArray[i+1] == 'o' && tableCharArray[i+2] == '-'){
- tableCharArray[i] = '-';
- tableCharArray[i + 1] = '-';
- tableCharArray[i + 2] = 'o';
- i = -1;
- }
- if(i > 1 && tableCharArray[i-1] == 'o' && tableCharArray[i-2] == '-'){
- tableCharArray[i] = '-';
- tableCharArray[i - 1] = '-';
- tableCharArray[i - 2] = 'o';
- i = -1;
- }
- else if(i == 0 && tableCharArray[i+1] == 'o' && tableCharArray[i+2] == '-'){
- tableCharArray[i] = '-';
- tableCharArray[i + 1] = '-';
- tableCharArray[i + 2] = 'o';
- i = -1;
- }
- else if(i == currentTable.length() && tableCharArray[i-1] == 'o' && tableCharArray[i-2] == '-'){
- tableCharArray[i] = '-';
- tableCharArray[i - 1] = '-';
- tableCharArray[i - 2] = 'o';
- i = -1;
- }
- }
- }
- for(int i = 0 ; i < currentTable.length() ; i++){
- if(tableCharArray[i] == 'o'){
- remainingPebles++;
- }
- }
- return remainingPebles;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement