/images/jg_02.jpg

BEAKJOON 4948, 9020, 3053, 1002

4948_베르트랑 공준

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
import sys

while True:
    N = int(sys.stdin.readline().rstrip())

    if N == 0:
        break

    arr = [0,0] + [1] * ((2*N)-1)
    rootN = int((2*N)**0.5)

    for i in range(2, rootN+1):
        if arr[i] == 1:
            for j in range(2*i, 2*N+1, i):
                arr[j] = 0
    
    print(sum(arr[N+1:(2*N)+1]))

# 입출력에 제한이 있다가 0을 입력 받을 때 까지
# 출력을 해야 하는 조건을 달지 않는 것을 주의!

BEAKJOON 10250, 2775, 2869, 1011

10250_ACM호텔

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
import sys

for T in range(int(sys.stdin.readline().rstrip())):
    H, W, N = map(int, sys.stdin.readline().split())

    quo = str((N // H) + 1)
    rem = str(N % H)

    if N % H == 0:
        quo = str(N//H)
        rem = str(H)

    print(rem+quo.zfill(2))

# zfill?
# a = "2"
# b = "12"

# A = a.zfill(2)
# B = b.zfill(2)
# print(A)	// 02
# print(B)	// 12

BEAKJOON 10809, 2941, 2908, 1316

10809_알파벳찾기

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import sys

word = sys.stdin.readline().rstrip()
alphabet = list(range(97,123))

for x in alphabet :
    print(word.find(chr(x)), end=" ")

# find함수는 조건에 맞는 값의 index를 출력하고
# 찾지 못하는 경우 -1을 출력한다.