728x90
반응형

단순 구현 문제이다.

case = 1
while 1:
    n = int(input())
    if n == 0:
        break
    names = [input() for _ in range(n)]
    li = [0]*n
    for _ in range(2*n-1):
        i, a = input().split()
        li[int(i)-1] += 1
    res = names[[i for i in range(n) if li[i] != 2][0]]
    print(f"{case} {res}")
    case += 1

코드의 이 부분은 

res = names[[i for i in range(n) if li[i] != 2][0]]

아래와 같다.

for i in range(n):
        if li[i] != 2:
            res = names[i]; break
728x90
반응형
728x90
반응형

브루트포스 알고리즘 문제이다. 파이썬은 문자열 다루기가 참 편한 것 같다. 파이썬 짱!

s = input()
li = []
for i in range(len(s)-2):
    for j in range(i+1, len(s)-1):
        for k in range(j+1, len(s)):
            t = s[:j][::-1] + s[j:k][::-1] + s[k:][::-1]
            li.append(t)
print(min(li))
728x90
반응형
728x90
반응형

단순 구현 문제이다.

for i in range(int(input())):
    li = input().split()
    res = "NO"
    if li[1] == '+' and int(li[0])+int(li[2]) == int(li[4]):
        res = "YES"
    if li[1] == '-' and int(li[0])-int(li[2]) == int(li[4]):
        res = "YES"
    print(f"Case {i+1}: {res}")

 

728x90
반응형
728x90
반응형

단순 구현 문제이다.

while 1:
    a, b, c, d = map(int, input().split())
    if a == b == c == d == 0:
        break
    print(c-b, d-a)
728x90
반응형
728x90
반응형

단순 구현 문제이다.

while 1:
    l, w, a = map(int, input().split())
    if l == w == a == 0:
        break
    if l == 0:
        l = a//w
    elif w == 0:
        w = a//l
    elif a == 0:
        a = l*w
    print(l, w, a)
728x90
반응형
728x90
반응형

단순 수학 문제이다.

i = 1
while 1:
    n = int(input())
    if n < 0:
        break
    X = Y = M = 0
    for _ in range(n):
        x, y, m = map(int, input().split())
        X += x*m; Y += y*m; M += m
    print("Case %d: %.2f %.2f" % (i, X/M, Y/M))
    i += 1
    t = input()
728x90
반응형
728x90
반응형

단순 구현 문제이다.

n, k = map(int, input().split())
li = [int(input()) for _ in range(n)]
cnt = 0
for i in range(n-1):
    if li[i]-li[i+1] >= k:
        cnt += 1
print(cnt)    
728x90
반응형
728x90
반응형

단순 수학 문제이다.

for i in range(int(input())):
    a, b = map(int, input().split())
    cnt = 0
    for n in range(int(a**(1/3)), int(b**(1/3))+1):
        if a <= n**3 <= b:
            cnt += 1
    print(f"Case #{i+1}: {cnt}")
728x90
반응형
728x90
반응형

단순 구현 문제이다.

for i in range(int(input())):
    res = max(map(int, input().split()))
    print(f"Case #{i+1}: {res}")
728x90
반응형
728x90
반응형

단순 구현 문제이다.

cnt = 0
for _ in range(int(input())):
    y, x, d, w = map(float, input().split())
    if (y > 56 or x > 45 or d > 25) and y+x+d > 125 or w > 7:
        print(0)
        continue
    print(1)
    cnt += 1    
print(cnt)
728x90
반응형
728x90
반응형

단순 구현 문제이다.

li = [0]*5
for _ in range(int(input())):
    x, y = map(int, input().split())
    if x == 0 or y == 0:
        li[4] += 1
    elif x > 0 and y > 0:
        li[0] += 1
    elif x < 0 and y > 0:
        li[1] += 1
    elif x < 0 and y < 0:
        li[2] += 1
    else:
        li[3] += 1
for i in range(4):
    print(f"Q{i+1}: {li[i]}")
print(f"AXIS: {li[4]}")
728x90
반응형
728x90
반응형

단순 사칙연산 문제이다. 이동거리 = 속도 * (연료양/연료소비율) = v * f/c

for _ in range(int(input())):
    N, D = map(int, input().split())
    cnt = 0
    for i in range(N):
        v, f, c = map(int, input().split())
        if v * f/c >= D:
            cnt += 1
    print(cnt)
728x90
반응형
728x90
반응형

단순 구현 문제이다.

s = input()
if len(s) <= 2:
    print("◝(⑅•ᴗ•⑅)◜..°♡ 뀌요미!!")
else:
    ok = 1
    t = int(s[0])-int(s[1])
    for i in range(1, len(s)-1):
        if int(s[i])-int(s[i+1]) != t:
            ok = 0
    print("◝(⑅•ᴗ•⑅)◜..°♡ 뀌요미!!" if ok else "흥칫뿡!! <( ̄ ﹌  ̄)>")
728x90
반응형
728x90
반응형

단순 구현 문제이다. Python3로 제출했더니 시간 초과가 나와서 PyPy3로 제출했다.

이게 처음에 헷갈릴 수도 있는 게 i=1, j=2, x=2, y=3이라고 했을 때

(1,2), (1,3), (2,1), (2,2), (2,3)의 합을 구하는 게 아니라 (1, 2), (1, 3), (2,2), (2,3)의 합을 구해야 된다.

N, M = map(int, input().split())
li = [list(map(int, input().split())) for _ in range(N)]
for _ in range(int(input())):
    i, j, x, y = map(int, input().split())
    n, m = i, j
    res = 0
    while 1:
        if m > y:
            n += 1
            m = j
        res += li[n-1][m-1]
        if n == x and m == y:
            break
        m += 1
    print(res)
728x90
반응형
728x90
반응형

단순 문자열 정렬이다. 

while 1:
    s = input()
    if s == "END":
        break
    print(s[::-1])
728x90
반응형

+ Recent posts