728x90
https://school.programmers.co.kr/learn/courses/30/lessons/160585?language=csharp
소스코드
using System;
public class Solution {
public int solution(string[] board) {
// 아무것도없으면 성공
// o,x 개수가 같으면 실패
int countO = 0;
int countX = 0;
for (int y = 0; y < 3; y++)
{
for (int x = 0; x < 3; x++)
{
if (board[y][x] == 'O')
countO++;
else if (board[y][x] == 'X')
countX++;
}
}
if (countO > countX + 1)
return 0;
if (countO < countX)
return 0;
int continuO = 0;
int continuX = 0;
for (int i = 0; i < 3; i++)
{
if (board[i] == "OOO")
continuO++;
else if (board[i] == "XXX")
continuX++;
if (board[0][i] == 'O' && board[1][i] == 'O' && board[2][i] == 'O')
continuO++;
if (board[0][i] == 'X' && board[1][i] == 'X' && board[2][i] == 'X')
continuX++;
}
if (board[1][1] == 'X')
{
if (board[0][0] == 'X' && board[2][2] == 'X')
continuX++;
if (board[0][2] == 'X' && board[2][0] == 'X')
continuX++;
}
else if (board[1][1] == 'O')
{
if (board[0][0] == 'O' && board[2][2] == 'O')
continuO++;
if (board[0][2] == 'O' && board[2][0] == 'O')
continuO++;
}
if (continuX > 0 && continuO > 0)
return 0;
if (continuO > continuX && countO == countX)
return 0;
if (continuX > continuO && countO > countX)
return 0;
return 1;
}
}
728x90
'코딩공부 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] Lv1 특정 옵션이 포함된 자동차 리스트 구하기ORACLE (0) | 2023.12.20 |
---|---|
[프로그래머스] Lv2 조건에 부합하는 중고거래 댓글 조회하기 ORACLE (1) | 2023.12.20 |
[프로그래머스] [PCCP 모의고사 #1] 1번 - 외톨이 알파벳 c++ (0) | 2023.12.19 |
[프로그래머스]Lv1 성격 유형 검사하기 C++ (map) (0) | 2023.09.12 |
[프로그래머스]Lv1 숫자 짝꿍C++ (char 숫자 int로 변경) (0) | 2023.09.08 |