728x90
반응형

자료구조 문제라는데 그냥 정렬로 풀었다. lambda 너무 편하다!!

N = int(input())
li = [list(map(int, input().split())) for _ in range(N)]
sorted_li = sorted(li, key=lambda x:(-x[0], x[1], x[2]))
print(li.index(sorted_li[0])+1)
728x90
반응형
728x90
반응형

단순 구현 문제이다.

보아하니 입력에 0이 안 주어지는 경우는 없는 것 같아서 그냥 반복문을 li.index(0)부터 시작해줬다.

N = int(input())
li = list(map(int, input().split()))
k = cnt = 0
for i in range(li.index(0), N):
    if li[i] == k:
        k = (k+1)%3
        cnt += 1
print(cnt)
728x90
반응형
728x90
반응형

단순 사칙연산 문제이다.

N = int(input())
res = sum([N * 10**i for i in range(int(input())+1)])
print(res)
728x90
반응형
728x90
반응형

단순 구현 문제다. 입력으로 받은 리스트를 li라고 하면, li와 정렬된 li의 다른 요소의 개수를 세주면 된다.

N = int(input())
li = list(map(int, input().split()))
sorted_li = sorted(li)
res = len([i for i in range(N) if li[i] != sorted_li[i]])
print(res)
728x90
반응형
728x90
반응형

단순 수학 문제이다. 파이썬에서 XOR 연산자는 ^이다. XOR 연산을 2번 하면 자기 자신이라,

C%2번만큼만 연산해주면 된다. 이렇게 안 하면 시간 초과가 나온다.

A, B, C = map(int, input().split())
for _ in range(C%2):
    A ^= B
print(A)
728x90
반응형
728x90
반응형

단순 사칙연산 문제이다.

a, b = map(int, input().split())
res = 1
for i in range(a, b+1):
    res *= sum([j for j in range(1, i+1)])
print(res%14579)
728x90
반응형
728x90
반응형

단순 사칙연산 문제이다. n이 1일 때는 li[0][0]을 출력해주고, n이 2 이상일 때는

li[0][0] + sum(li[-1]) if n > 1 else li[0][0] + sum([li[i][0]+li[i][-1] for i in range(1, n-1)])을 출력해주면 된다.

case = 1
while 1:
    n = int(input())
    if n == 0:
        break
    li = [list(map(int, input().split())) for _ in range(n)]
    res = li[0][0] + sum(li[-1]) if n > 1 else li[0][0]
    res += sum([li[i][0]+li[i][-1] for i in range(1, n-1)])
    print(f"Case #{case}:{res}")
    case += 1
728x90
반응형
728x90
반응형

단순 수학 문제이다.

for _ in range(int(input())):
    n = int(input())
    res = sum([i**2 for i in range(1, n+1)])
    print(res)
728x90
반응형
728x90
반응형

단순 사칙연산 문제이다.

N = int(input())
cnt = 0
for i in range(1, (N-2)//2+1):
    for j in range(2, N-i+1):
        K = N - (2*i + j)
        if K > 0 and K%2 == 0:
            cnt += 1
print(cnt)
728x90
반응형
728x90
반응형

단순 수학 문제이다.

n = int(input())
res = ''
t = 0
while 9**t <= n:
    t += 1
res = ''
for i in range(t-1, -1, -1):
    res += str(n//(9**i))
    n = n%(9**i)
print(res)
728x90
반응형
728x90
반응형

단순 사칙연산 문제이다.

A, B = map(int, input().split())
C = int(input())
print(A+B - 2*C if A+B >= 2*C else A+B)
728x90
반응형
728x90
반응형

단순 수학 문제이다. 작은 두 변의 길이의 합이 제일 긴 변의 길이보다 커야 된다는 점을 사용하면 쉽게 풀 수 있다.

li = sorted(map(int, input().split()))
res = li[0] + li[1] + min(li[2], li[0]+li[1]-1)
print(res)
728x90
반응형
728x90
반응형

단순 수학 문제이다.

10진수랑 16진수는 변환이 안 되는 경우가 없지만 8진수의 경우에는 숫자 안에 8이나 9가 들어있으면 변환이 안된다.

변환이 안되면 0을 출력하라고 했으므로 int(n, 8) if max(list(n)) < '8' else 0 같은 방식으로 처리해주면 된다.

for _ in range(int(input())):
    i, n = input().split()
    o = int(n, 8) if max(list(n)) < '8' else 0
    print(int(i), o, int(n), int(n, 16))
728x90
반응형
728x90
반응형

단순 수학 문제이다.

while 1:
    n = int(input())
    if n == 0:
        break
    if n <= 1000000:
        print(n)
    elif 1000000 < n <= 5000000:
        print(int(n*0.9))
    else:
        print(int(n*0.8))
728x90
반응형
728x90
반응형

단순 정렬 문제이다.

li = [input() for _ in range(int(input()))]
li.sort(key=lambda x:float(x))
print(li[1])
728x90
반응형

+ Recent posts