반응형
반응형

https://www.acmicpc.net/problem/9655

문제 요약

마지막 돌을 가져간 사람이 누군지 출력하기

 

 

 

참고

게임은 무조건 상근이가 먼저 시작한다.

돌은 1~3개를 가져가는 게 아니라, 1개 또는 3개를 가져간다.

만약 3개 미만의 돌이 남았을 때 3개를 가져간다는 선택은 불가능하다.

 

 

 

풀이 1
Console.Write(int.Parse(Console.ReadLine())%2==1?"SK":"CY");

 

직접 경우의 수를 써봤는데 무조건 돌 개수가 홀수일 땐 상근이가 이기고 짝수일 땐 창영이가 이기게 된다.

 

 

 

풀이 2

 

Console.Write(Console.ReadLine()[^1]%2==1?"SK":"CY");

입력받은 문자열의 마지막 문자를 2로 나눴을 때 1이면 SK, 아니면 CY 출력

 

여기서 조금 더 짧게 하려면

Console.Write(Console.ReadLine()[^1]%2>0?"SK":"CY");

이렇게 쓸 수 있다. 0보다 크면 1이니까 SK, 아니면 CY

 

여기서 마지막 문자를 아스키코드로 변환했을 때

'0'~'9' => 48~57이기 때문에 %2 했을 때도 짝수, 홀수가 된다.


 

또 새로운 거 배웠다

까먹지 마..!!

반응형

+ Recent posts