
038.μ§μ¬κ°ν λ³μ°κΈ°
/*
λ¬Έμ μ€λͺ
μ΄ λ¬Έμ μλ νμ€ μ
λ ₯μΌλ‘ λ κ°μ μ μ nκ³Ό mμ΄ μ£Όμ΄μ§λλ€.
λ³(*) λ¬Έμλ₯Ό μ΄μ©ν΄ κ°λ‘μ κΈΈμ΄κ° n, μΈλ‘μ κΈΈμ΄κ° mμΈ μ§μ¬κ°ν ννλ₯Ό μΆλ ₯ν΄λ³΄μΈμ.
μ ν 쑰건
nκ³Ό mμ κ°κ° 1000 μ΄νμΈ μμ°μμ
λλ€.
*/
fun main(args: Array<String>) {
val (a, b) = readLine()!!.split(' ').map(String::toInt)
//readLine() = μ
λ ₯κ° StringμΌλ‘ λ°μ, !!= λ°λμ μ‘΄μ¬ν¨
//.split(' ') = ' 'μΌλ‘ λ¬Έμ μλΌ λ°°μ΄ λ§λ¬
//.map(String::toInt) = μλ₯Έ λ°°μ΄μ κ°κ° a,b λ³μμ λ§΅ν ν¨
var str =""
for (i in 1 .. b){
for (j in 1..a){
str += "*"
}
println("${str}")
str =""
}
}
039.μ΅λ곡μ½μμ μ΅μ곡배μ
> 머리 μ¨κ°λ©° κΈ°λ³Έ λ¬Έλ²λ§ μ°λκ±° λ³΄λ¨ μκ³ λ¦¬μ¦μ μ¬μ©ν΄ λ³΄κ³ μ κ²μν Try....
/*
λ¬Έμ μ€λͺ
λ μλ₯Ό μ
λ ₯λ°μ λ μμ μ΅λ곡μ½μμ μ΅μ곡배μλ₯Ό λ°ννλ ν¨μ, solutionμ μμ±ν΄ 보μΈμ. λ°°μ΄μ 맨 μμ μ΅λ곡μ½μ, κ·Έλ€μ μ΅μ곡배μλ₯Ό λ£μ΄ λ°ννλ©΄ λ©λλ€. μλ₯Ό λ€μ΄ λ μ 3, 12μ μ΅λ곡μ½μλ 3, μ΅μ곡배μλ 12μ΄λ―λ‘ solution(3, 12)λ [3, 12]λ₯Ό λ°νν΄μΌ ν©λλ€.
μ ν μ¬ν
λ μλ 1μ΄μ 1000000μ΄νμ μμ°μμ
λλ€.
*/
import kotlin.math.*
class Solution {
fun solution(n: Int, m: Int): IntArray {
return intArrayOf(gcm(n, m), lcm(n, m))
}
fun gcm(a: Int, b: Int): Int { //μ΅λ 곡μ½μ - gcmμκ³ λ¦¬μ¦
var maximum = max(a, b)//max() = λ μμ€ μ μΌ ν°μ
var minimum = min(a, b)//min() = λ μμ€ μ μΌ μμμ
//μ¬κ·ν¨μ μ¬μ© = μΆλ ₯μμ ν¨μ λ³ΈμΈμ λ€μ λΆλ¬ μ¬μ©νλ ν¨μλ₯Ό λ§ν¨
return if ( minimum != 0) { gcm(minimum, maximum % minimum) }
else { maximum }
}
//μ΅μ 곡배μ - lcmμκ³ λ¦¬μ¦
fun lcm(a: Int, b: Int): Int = (a * b) / gcm(a, b)
}