https://www.acmicpc.net/problem/5988
난이도 : 브론즈 3
태그 : 수학, 문자열, 사칙연산, 임의 정밀도 / 큰 수 연산
설명
수를 입력받고 이 수가 짝수라면 even을, 홀수라면 odd를 출력하는 문제입니다.
단순히 수를 입력받고 이를 2로 나눴을 때 나머지를 구할 경우,
K (1 <= K <= 10^60)이기에 Long 형으로도 다 담지 못합니다.
10^60이면, 0이 60개니까,
1000000000000000000000000000000000000000000000000000000000000 네요.
짝수 홀수를 판단하는건 사실 1의 자리에 의해 결정됩니다.
그냥 문자열로 받아, 마지막 문자만 정수로 바꿔 홀수냐 짝수냐를 판단하면 됩니다.
소스코드
fun main() = repeat(readln().toInt()) {
println(if (readln().last().digitToInt() % 2 == 0) "even" else "odd")
}