Algorithm, Problem Solving/codeforces

[codeforces][Kotlin] 1475A - Odd Divisor

태오님 2023. 3. 29.

목차

     

    문제 정보

    https://codeforces.com/problemset/problem/1475/A

     

    Problem - 1475A - Codeforces

     

    codeforces.com

    난이도 : A

    유형 : Math


    문제 풀이

    주어진 숫자가 짝수일 경우 2로 계속 나누어서 홀수로 만든 다음 결괏값이 3 이상인 홀수이면 정답이다.


    코드

    import java.io.BufferedReader
    import java.io.InputStreamReader
    
    fun solution() = with(BufferedReader(InputStreamReader(System.`in`))) {
        var sb = StringBuilder()
        var t = readLine().toInt()
        while (t-- > 0) {
            var input = readLine().toLong()
            
            if(input %2 == 1L) {
                sb.append("YES")
                continue
            }
            
            while (input % 2 != 1L) {
                input /= 2
            }
    
            if (input >= 3) {
                sb.append("YES")
            } else {
                sb.append("NO")
            }
            sb.append('\n')
        }
    
        print(sb)
    }
    
    fun main() {
        solution()
    }

    댓글