ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Kotlin 🍬 λ°±μ€€ 14단계 :: 10815 번
    2024. 2. 29. 16:25
    λ°˜μ‘ν˜•

    숫자 μΉ΄λ“œ

    문제   |

      숫자 μΉ΄λ“œλŠ” μ •μˆ˜ ν•˜λ‚˜κ°€ μ ν˜€μ Έ μžˆλŠ” μΉ΄λ“œμ΄λ‹€. μƒκ·Όμ΄λŠ” 숫자 μΉ΄λ“œ N개λ₯Ό 가지고 μžˆλ‹€. μ •μˆ˜ Mκ°œκ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, 이 μˆ˜κ°€ μ ν˜€μžˆλŠ” 숫자 μΉ΄λ“œλ₯Ό 상근이가 가지고 μžˆλŠ”μ§€ μ•„λ‹Œμ§€λ₯Ό κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

     

    μž…λ ₯   |

      첫째 쀄에 상근이가 가지고 μžˆλŠ” 숫자 μΉ΄λ“œμ˜ 개수 N(1 ≤ N ≤ 500,000)이 주어진닀. λ‘˜μ§Έ μ€„μ—λŠ” 숫자 μΉ΄λ“œμ— μ ν˜€μžˆλŠ” μ •μˆ˜κ°€ 주어진닀. 숫자 μΉ΄λ“œμ— μ ν˜€μžˆλŠ” μˆ˜λŠ” -10,000,000보닀 ν¬κ±°λ‚˜ κ°™κ³ , 10,000,000보닀 μž‘κ±°λ‚˜ κ°™λ‹€. 두 숫자 μΉ΄λ“œμ— 같은 μˆ˜κ°€ μ ν˜€μžˆλŠ” κ²½μš°λŠ” μ—†λ‹€.

      μ…‹μ§Έ μ€„μ—λŠ” M(1 ≤ M ≤ 500,000)이 주어진닀. λ„·μ§Έ μ€„μ—λŠ” 상근이가 가지고 μžˆλŠ” 숫자 μΉ΄λ“œμΈμ§€ μ•„λ‹Œμ§€λ₯Ό ꡬ해야 ν•  M개의 μ •μˆ˜κ°€ 주어지며, 이 μˆ˜λŠ” 곡백으둜 κ΅¬λΆ„λ˜μ–΄μ Έ μžˆλ‹€. 이 μˆ˜λ„ -10,000,000보닀 ν¬κ±°λ‚˜ κ°™κ³ , 10,000,000보닀 μž‘κ±°λ‚˜ κ°™λ‹€.

     

    좜λ ₯   | 

      첫째 쀄에 μž…λ ₯으둜 주어진 M개의 μˆ˜μ— λŒ€ν•΄μ„œ, 각 μˆ˜κ°€ 적힌 숫자 μΉ΄λ“œλ₯Ό 상근이가 가지고 있으면 1을, μ•„λ‹ˆλ©΄ 0을 곡백으둜 ꡬ뢄해 좜λ ₯ν•œλ‹€.

     

     

    풀이  |

      M개의 숫자λ₯Ό 담은 array둜 for문을 돌렀 N개의 array 내뢀에 ν•΄λ‹Ή 값이 μžˆλŠ”μ§€ λΉ„κ΅ν•œλ‹€.

     

     

    λ‹΅μ•ˆ  |

    fun main() {
        val N = readLine()!!.toInt()
        val nArr = readLine()!!.split(" ").map(String::toInt)
        val M = readLine()!!.toInt()
        val mArr = readLine()!!.split(" ").map(String::toInt)
        
        val result = Array(M) {0}
        mArr.forEachIndexed { i, n ->
            if (n in nArr) {
                result[i] = 1
            }
        }
        print(result.joinToString(" "))
    }

     

    ^ μ‹œκ°„μ΄ˆκ³Όκ°€ λ°œμƒν•œ μ½”λ“œ

     

    arrayλ₯Ό Set으둜 λ³€ν™˜ν•˜μ—¬ λΉ λ₯΄κ²Œ μš”μ†Œλ₯Ό 확인할 수 μžˆλ„λ‘ μˆ˜μ •ν•œ μ½”λ“œ

    import java.io.BufferedReader
    import java.io.InputStreamReader
    
    fun main() {
        val br = BufferedReader(InputStreamReader(System.`in`))
    
        val N = br.readLine().toInt()
        val nArr = br.readLine().split(" ").map(String::toInt).toSet() // λ³€ν™˜ ν›„ Set으둜 μ €μž₯
        val M = br.readLine().toInt()
        val mArr = br.readLine().split(" ").map(String::toInt)
    
        val result = IntArray(M)
        for (i in mArr.indices) {
            if (mArr[i] in nArr) {
                result[i] = 1
            } else {
                result[i] = 0
            }
        }
    
        print(result.joinToString(" "))
    }

     

    λ°˜μ‘ν˜•

    λŒ“κΈ€

Designed by Tistory.