baekjoon 20251228

This commit is contained in:
songyc macbook 2025-12-28 22:55:25 +09:00
parent 8057e3788c
commit 4a77cd5636
3 changed files with 93 additions and 0 deletions

View File

@ -0,0 +1 @@
print(int(input()) - sum([int(input()) for _ in range(9)]))

View File

@ -0,0 +1,41 @@
import Foundation
let MAX_NUM: Int = 1000000
let SQRT_MAX = Int(sqrt(Double(MAX_NUM)))
var isPrime: [Bool] = Array(repeating: true, count: MAX_NUM+1)
(isPrime[0], isPrime[1]) = (false, false)
for n in 2...SQRT_MAX {
if isPrime[n] {
for i in stride(from: n*n, through: MAX_NUM, by: n) {
isPrime[i] = false
}
}
}
func pairCount(_ num: Int) -> Int {
var ans: Int = 0
for n in 2...num/2 {
if isPrime[n] && isPrime[num-n] {
ans += 1
}
}
return ans
}
func solve() -> [String] {
var result: [String] = []
guard let T = Int(readLine() ?? "") else { return []}
for _ in 0..<T {
guard let N = Int(readLine() ?? "") else { break }
result.append(String(pairCount(N)))
}
return result
}
print(solve().joined(separator: "\n"))

View File

@ -0,0 +1,51 @@
func solve() {
guard let input1 = readLine() else { return }
var NM = input1.split(separator : " ").compactMap{Int($0)}
let (N, M) = (NM[0], NM[1])
var graph: [[Int]] = Array(repeating: [], count: N+1)
var indegree: [Int] = Array(repeating: 0, count: N+1)
for _ in 1...M {
guard let input2 = readLine() else { break }
let seq: [Int] = input2.split(separator: " ").compactMap{Int($0)}
for i in 1..<seq[0] {
let (u, v) = (seq[i], seq[i+1])
graph[u].append(v)
indegree[v] += 1
}
}
var qu: [Int] = []
var idx: Int = 0
var result: [String] = []
for i in 1...N {
if indegree[i] == 0 {
qu.append(i)
}
}
while idx < qu.count {
let now: Int = qu[idx]
idx += 1
result.append(String(now))
for nxt in graph[now] {
indegree[nxt] -= 1
if indegree[nxt] == 0 {
qu.append(nxt)
}
}
}
if result.count != N {
print(0)
return
}
print(result.joined(separator: "\n"))
}
solve()