728x90
반응형

입력앞에 숫자만 붙여서 그대로 출력해주면 된다.

format을 사용하자!

for i in range(int(input())):
    print('{0}. {1}'.format(i+1, input()))

728x90
반응형
728x90
반응형

반복문을 많이 사용하게 되는 노가다 문제이다.

R, C = map(int, input().split())
A, B = map(int, input().split())

li = []
t1, t2 = '', ''
for i in range(C):
    if i % 2:
        t1 += '.'*B
    else:
        t1 += 'X'*B
    if i % 2:
        t2 += 'X'*B
    else:
        t2 += '.'*B
for i in range(R):
    if i % 2:
        for _ in range(A):
            print(t2)
    else:
        for _ in range(A):
            print(t1)

728x90
반응형
728x90
반응형

import math
r = int(input())
print('%.6f'%(math.pi*r**2))
print('%.6f'%(2*r**2))

728x90
반응형
728x90
반응형

set을 사용하면 쉽게 풀 수 있다. 이런 문제는 굳이 리스트를 사용할 이유가 없다. 

s = set()
for i in range(10):
    s.add(int(input())%42)
print(len(s))

728x90
반응형
728x90
반응형

n개의 꼭짓점을 가진 다각형에서 4개의 점을 고르면 사각형 하나를 만들 수 있고, 해당 사각형은 단 하나의 대각선의

교점을 가진다. 즉 사각형을 몇 개 만들 수 있는지 알면 대각선들의 꼭짓점의 총개수도 구할 수 있다.

n개의 꼭지점 중에 4개의 꼭짓점을 순서 없이 고르는 연산은 nC4 = n*(n-1)*(n-2)*(n-3)/24이다.

n = int(input())
print(n*(n-1)*(n-2)*(n-3)//24)

728x90
반응형
728x90
반응형

세 점의 좌표가 주어지면 x값이 같은 점 2개, y값이 같은 점 2개가 생기는데 

여기서 중복되지 않는 x, y값만 모으면 그게 나머지 한 점의 좌표이다.

EX) [30. 20], [10, 10], [10, 20]

x값 10 중복 O -> x = 30 

 y값 20 중복 O -> y = 10

답: [30, 10]

X = []
Y = []
for _ in range(3):
    x, y = input().split()
    X.append(x)
    Y.append(y)
for i in range(3):
    if X.count(X[i]) == 1:
        x = X[i]
    if Y.count(Y[i]) == 1:
        y = Y[i]
print(x, y)

728x90
반응형
728x90
반응형

규칙에 맞는 수를 출력해주면 된다.

a, b, c = sorted(list(map(int, input().split())))

n1, n2 = b-a, c-b
if n1 == n2:
    print(c + n1)
else:
    n = min(n1, n2)
    if n2 != n:
        print(c - n)
    else:
        print(b - n)

728x90
반응형
728x90
반응형

A, C와 B의 거리를 각각 구하고 둘 중 더 큰 값에 1을 빼준 값을 출력해주면 된다. 

A, B, C = map(int, input().split())
print(max(B-A-1, C-B-1))

728x90
반응형
728x90
반응형

단어 안에 크로아티아 알파벳에 속하는 알파벳들을 모두 *(공백과 알파벳을 제외한 모든 특수기호)로 바꿔주고 

변환된 단어의 길이를 출력해주면 된다.

li = ['c=', 'c-', 'dz=', 'd-', 'lj', 'nj', 's=', 'z=']
w = input()
 
for c in li:
    w = w.replace(c, '*')
print(len(w))

728x90
반응형
728x90
반응형

간단한 규칙 찾기 문제이다.

N = int(input())
n = N + 2
ans = 1 * n

for i in range(2, N+1):
    ans += i * n
print(ans)
728x90
반응형
728x90
반응형

a = input()
if a == '1 2 3 4 5 6 7 8':
    print("ascending") 
elif a == '8 7 6 5 4 3 2 1':
    print ('descending')
else:
    print ("mixed")   

728x90
반응형
728x90
반응형

A, l = map(int, input().split())
print(A * (l-1) + 1)

728x90
반응형
728x90
반응형

거꾸로 돌렸을 때 더 큰 값을 출력하면 된다.

n1, n2 = input().split()
print(max(int(n1[::-1]), int(n2[::-1])))

728x90
반응형
728x90
반응형

쉬운 수학 문제다.

한 변의 길이가 3 -> 5 -> 9 -> 17 -> 33... 와 같이 2**i 개만큼 계속 증가하는 패턴이다.

n = 2
a = 1
for i in range(int(input())):
    n += a
    a *= 2
print(n**2)

728x90
반응형
728x90
반응형

split('-')을 사용해 '-' 기준으로 입력을 나누어주고 첫 글자만 따서 합친 값을 출력하면 된다.

names = input().split('-')
ans = ''
for name in names:
    ans += name[0]
print(ans)

728x90
반응형

+ Recent posts