ამოხსნების სტატუსი

ამ გვერდზე თქვენ იხილავთ გაგზავნილი ამოხსნების სტატუსს.


გაგზავნის თარიღი: 15.04.2019 13:36:43

ამოცანა: ჯვრები და ნულები

მომხმარებელი: Kala

ვერდიქტი: სრული ამოხსნა

შეფასება: 100.0 ქულა







#include <bits/stdc++.h>
#include <algorithm> 
using namespace std;


int row = 3;
int col = 3;
char grid[3][3];


int checkDiagonal(){
	bool f = true;
	bool s = true;
	//1
	for(int i = 0; i < col; i++){
			if(grid[i][i] != '+'){
				f = false;
			}
			if(grid[i][i] != '0'){
				s = false;
			}
			if(grid[i][i] == '*'){
				f = s= false;
			}
			
	}
		if(f) return 1;
		if(s) return 2;
	
	f = s = true;
	//2
	for(int i = 0; i < col; i++){
			if(grid[i][col - 1 - i] != '+'){
				f = false;
			}
			if(grid[i][col - 1 - i] != '0'){
				s = false;
			}
			if(grid[i][col - 1 - i] == '*'){
				f = s= false;
			}
	}
		if(f) return 1;
		if(s) return 2;
	
	return 0;
}
int checkVertical(){
	bool f = true;
	bool s = true;
	for(int i = 0; i < col; i++){
		f = s = true;
		for(int j = 0; j < row; j++){
		
			if(grid[j][i] != '+'){
				f = false;
			}
			if(grid[j][i] != '0'){
				s = false;
			}
			if(grid[j][i] == '*'){
				f = s= false;
			}
		}
		if(f) return 1;
		if(s) return 2;
	}
	return 0;
}
int checkHorizontal(){
	bool f = true;
	bool s = true;
	for(int i = 0; i < row; i++){
		f = s = true;
		for(int j = 0; j < col; j++){
			if(grid[i][j] != '+'){
				f = false;
			}
			if(grid[i][j] != '0'){
				s = false;
			}
			if(grid[i][j] == '*'){
				f = s= false;
			}
		}
		if(f) return 1;
		if(s) return 2;
	}
	return 0;
}
int main() {
	char c;
	for(int i = 0; i < row; i++){
		for(int j = 0; j < col; j++){
			cin >> c;
			grid[i][j] = c;
		}
	}

	int h = checkHorizontal();
	int v = checkVertical();
	int d = checkDiagonal();
	//cout << h << " " << v << " " << d << endl;
	if(h == 1 || v == 1 || d == 1){
		cout << "FIRST" << endl;
		
	} else if(h == 2 || v == 2 || d == 2){
		cout << "SECOND" << endl;
	} else {
		cout << "NO ONE" << endl;
	}
	return 0;
}

ტესტები

შემავალი მონაცემები
+0*
+00
+*0
გამომავალი მონაცემები
FIRST
თქვენი პასუხი
FIRST
ჩეკერის პასუხი
YES
შემავალი მონაცემები
+00
++0
0*+
გამომავალი მონაცემები
FIRST
თქვენი პასუხი
FIRST
ჩეკერის პასუხი
YES
შემავალი მონაცემები
+0+
000
++0
გამომავალი მონაცემები
SECOND
თქვენი პასუხი
SECOND
ჩეკერის პასუხი
YES
შემავალი მონაცემები
00+
+00
++0
გამომავალი მონაცემები
SECOND
თქვენი პასუხი
SECOND
ჩეკერის პასუხი
YES
შემავალი მონაცემები
00+
++0
++0
გამომავალი მონაცემები
FIRST
თქვენი პასუხი
FIRST
ჩეკერის პასუხი
YES
შემავალი მონაცემები
00+
+00
0++
გამომავალი მონაცემები
NO ONE
თქვენი პასუხი
NO ONE
ჩეკერის პასუხი
YES
შემავალი მონაცემები
+0+
+00
0++
გამომავალი მონაცემები
NO ONE
თქვენი პასუხი
NO ONE
ჩეკერის პასუხი
YES
შემავალი მონაცემები
0+0
+0+
0+0
გამომავალი მონაცემები
SECOND
თქვენი პასუხი
SECOND
ჩეკერის პასუხი
YES
შემავალი მონაცემები
+0*
+0*
*0*
გამომავალი მონაცემები
SECOND
თქვენი პასუხი
SECOND
ჩეკერის პასუხი
YES
შემავალი მონაცემები
0*+
0+0
+*0
გამომავალი მონაცემები
FIRST
თქვენი პასუხი
FIRST
ჩეკერის პასუხი
YES