나의 코드

import sys
input = sys.stdin.readline

n = int(input())
x = []
y = []
s = []

for _ in range(6):
    t, cur = map(int, input().split())
    s.append([t, cur])
    if t in [1, 2]:
        x.append(cur)
    else:
        y.append(cur)

l = []
for i in range(6):
    if s[i][0] == s[(i + 2) % 6][0]:
      l.append(s[(i + 1) % 6][1])
print(((max(x) * max(y)) - (l[0] * l[1])) * n)

나의 코드

import sys
input = sys.stdin.readline
data = input().strip()
answer = set()

for i in range(len(data)):
    for j in range(i, len(data)):
        answer.add(data[i:j+1])

print(len(answer))

 

풀이 방법

set 자료형 사용

나의 코드

import sys
input = sys.stdin.readline

n, m = map(int, input().split())
a = set(list(map(int, input().split())))
b = set(list(map(int, input().split())))

print(len((a.difference(b)).union((b.difference(a)))))

 

풀이 방법

set 자료형

 

print(len((a - b) | (b - a)))

위와 같이 표현할 수도 있다.  

나의 코드

from collections import Counter
import sys
input = sys.stdin.readline

n, m = map(int, input().split())
data = [input() for _ in range(n)]
s = [input() for _ in range(m)]

count = 0
data = Counter(data)

for i in s:
    if data[i]:
        count += 1

print(count)

 

풀이 방법

Collections의 Counter를 이용

 

+ Recent posts