열심히 풀어봅시다.~~
간단한 약수,배수 판정 문제입니다.
//https://www.acmicpc.net/problem/5086
fun main() {
val br = BufferedReader(InputStreamReader(System.`in`))
while (true) {
val (a, b) = br.readLine().split(" ").map { it.toInt() }
if (a == 0 && b == 0) {
break
}
if (a % b == 0) {
println("multiple")
} else if (b % a == 0) {
println("factor")
} else {
println("neither")
}
}
}
중복되는 값이 존재할수도 있기때문에 set으로 받아주면 좋아요~
import java.io.BufferedReader
import java.io.InputStreamReader
//https://www.acmicpc.net/problem/2501
fun main() {
val br = BufferedReader(InputStreamReader(System.`in`))
val (n, k) = br.readLine().split(" ").map { it.toInt() }
val numbers = mutableSetOf<Int>()
for (i in 1 until n/ 2) {
if (n % i == 0) {
numbers.add(i)
numbers.add(n/i)
}
}
if (numbers.size < k) {
println(0)
} else {
println(numbers.toList().sorted()[k-1])
}
}
항상 1은 들어가니 우선 추가해주고 2부터 체크하면 좋겠지용~
package com.wonddak.backjoon_kt.chapter9
import java.io.BufferedReader
import java.io.InputStreamReader
//https://www.acmicpc.net/problem/9506
fun main() {
val br = BufferedReader(InputStreamReader(System.`in`))
while (true) {
val n = br.readLine().toInt()
if (n == -1) {
break
}
val numbers = mutableSetOf(1)
for (i in 2 until n / 2) {
if (n % i == 0) {
numbers.add(i)
numbers.add(n / i)
}
}
val st = StringBuilder()
st.append(n)
if (numbers.sum() == n) {
st.append(" = ")
st.append(numbers.toList().sorted().joinToString(" + "))
} else {
st.append(" is NOT perfect.")
}
println(st.toString())
}
}
package com.wonddak.backjoon_kt.chapter9
import java.io.BufferedReader
import java.io.InputStreamReader
//https://www.acmicpc.net/problem/1978
fun main() {
fun isPrime(number: Int): Boolean {
for (i in 2 until number) {
if (number % i == 0) {
return false
}
}
return true
}
val br = BufferedReader(InputStreamReader(System.`in`))
val n = br.readLine().toInt()
val numbers = br.readLine().split(" ").map { it.toInt() }
var cnt = 0
for (number in numbers) {
if (number == 1) {
continue
}
if (isPrime(number)) {
cnt += 1
}
}
println(cnt)
}
1은 소수가 아닙니다~~
import java.io.BufferedReader
import java.io.InputStreamReader
//https://www.acmicpc.net/problem/2581
fun main() {
fun isPrime(number: Int): Boolean {
if (number == 1) {
return false
}
for (i in 2 until number) {
if (number % i == 0) {
return false
}
}
return true
}
val br = BufferedReader(InputStreamReader(System.`in`))
val m = br.readLine().toInt()
val n = br.readLine().toInt()
val primes = arrayListOf<Int>()
for (number in m..n) {
if (isPrime(number)) {
primes.add(number)
}
}
if (primes.isEmpty()) {
println(-1)
} else {
println(primes.sum())
println(primes[0])
}
}
import java.io.BufferedReader
import java.io.InputStreamReader
//https://www.acmicpc.net/problem/11653
fun main() {
val br = BufferedReader(InputStreamReader(System.`in`))
var n = br.readLine().toInt()
while (n != 1) {
for (i in 2..n) {
if (n % i == 0) {
println(i)
n /= i
break
}
}
}
}
오늘도 수고하셨습니다. 모든 문제는 GIT에서 확인 가능합니다.~