n, m = map(int,input().split())
result = [str(num+1) for num in range(n)] # 처음에는 바구니에 적혀있는 번호와 같은 번호가 적힌 공이 들어있다.

for _ in range(m):
    i, j = map(int, input().split())
    result[i-1:j] = reversed(result[i-1:j])

print(' '.join(result))
반응형
import math
import sys

data = []
while True:
    n = int(sys.stdin.readline().rstrip())
    if n == 0: # 마지막 테스트케이스가 나오면 중단하기
        break
    data.append(n)

decimal = set(range(min(data) + 1, max(data)*2 + 1)) # 테스트케이스 중 가장 작은 수 ~ 가장 큰수의x 2 의 범위까지에 존재하는 소수를 구한다
for i in range(2, int(math.sqrt(max(data)*2))+1): # 2 ~ 루트M(=M의 약수들 중에서 중간값) 까지 증가시킨다. (<-에라토스테네스의 체 방식)
    remove_element = set(range(i,(max(data)*2)+1,i)) # 2~ 루트M까지의 수의, 배수 set 을 생성
    remove_element.discard(i)
    decimal = decimal - remove_element # 2~ 루트M까지의 수의, 배수를 제거한다

decimal.discard(1) # 1이 포함되어있을 경우 삭제하기

for i in data:
    print(len(list(filter(lambda x: x > i and x <= (i*2), decimal)))) # 각 테스트케이스마다 존재하는 소수의 갯수 구하기​
반응형
result = [0,0,0,0,0,0]
chess = [1, 1, 2, 2, 2, 8]
data = list(map(int,input().split()))

for i in range(6):
    result[i] = chess[i] - data[i]

print(*result)
반응형

'알고리즘' 카테고리의 다른 글

[백준] 10811 바구니 뒤집기  (0) 2023.10.17
[백준] 4948 베르트랑 공준  (0) 2023.10.17
[백준]2941 크로아티아 알파벳  (0) 2023.10.17
[백준] 2839 설탕배달  (0) 2023.10.17
[백준] 2798 블랙잭  (0) 2023.10.17
word = input()
result = 0
croatia = ['c=','c-','dz=' ,'d-','lj','nj', 's=', 'z=']

for i in range(8):
    result += word.count(croatia[i]) # croatia 문자가 들어간 갯수 count
    word = word.replace(croatia[i]," ") # croatia 문자 replace 제거 후, ' '으로 제거된 자리 채우기

result += len(word.replace(' ','')) # croatia 문자를 모두 지우고 난 뒤, 남은 알파벳글자 수 세기. 단, 공백은 count 하지 않도록 없애기

print(result)
반응형

'알고리즘' 카테고리의 다른 글

[백준] 4948 베르트랑 공준  (0) 2023.10.17
[백준] 3003 킹,퀸,룩,비숍,나이트,폰  (0) 2023.10.17
[백준] 2839 설탕배달  (0) 2023.10.17
[백준] 2798 블랙잭  (0) 2023.10.17
[백준] 2750 수 정렬하기  (0) 2023.10.17
n = int(input())

min_way = -1
for i in range(0,n//5 + 1): # 0~ n을 5로 나누었을때의 몫까지 for 문 돌리기
    for j in range(0, n//3 + 1): # 0~ n을 3로 나누었을때의 몫까지 for 문 돌리기
        if (i * 5 + j* 3 == n) & (min_way == -1): # 최초로 바구니3 + 바구니 5 조합이 배달kg 에 부합했을 경우, min_way 에 바로 넣기
            min_way = i + j
        elif (i * 5 + j* 3 == n) & (min_way != -1) & (min_way > i+j): # 바구니3 + 바구니 5 조합이 배달kg 에 부합하면서, 이전 조합보다 바구니 더 적게 들 경우
            min_way = i + j

print(min_way)
반응형

'알고리즘' 카테고리의 다른 글

[백준] 3003 킹,퀸,룩,비숍,나이트,폰  (0) 2023.10.17
[백준]2941 크로아티아 알파벳  (0) 2023.10.17
[백준] 2798 블랙잭  (0) 2023.10.17
[백준] 2750 수 정렬하기  (0) 2023.10.17
[백준] 행렬 덧셈  (2) 2023.10.17
import itertools

n, m = map(int, input().split())
card = list(map(int, input().split()))

result = -1

perm = itertools.combinations(card, 3) # list 에서 r개 선택하는 조합 만들어서 iteration 객체로 반환(=조합이란 서로 다른 n개중에 r개를 선택하는 경우의 수를 의미함. 이때,순서는 상관 없음)
for i,j,k in perm:
    add_card = i + j + k
    if (add_card <= m) & (result < add_card): # 3가지 card 의 합이 m 을 넘지않으면서, 이전 조합보다 큰 수 일 경우
        result = add_card

print(result)
반응형

'알고리즘' 카테고리의 다른 글

[백준]2941 크로아티아 알파벳  (0) 2023.10.17
[백준] 2839 설탕배달  (0) 2023.10.17
[백준] 2750 수 정렬하기  (0) 2023.10.17
[백준] 행렬 덧셈  (2) 2023.10.17
[백준] 2720 세탁소 사장 동혁  (2) 2023.10.17
n = int(input())
data = [int(input()) for i in range(n)] # n 개의 input 을 list 에 담기
data.sort() # 오름차순 정렬하기( 내장함수로, quick 정렬에 해당함. https://www.daleseo.com/sort-quick/)

print(*data , sep='\n') # list를 출력할때, 원소 1개당 줄바꿈하기
반응형

'알고리즘' 카테고리의 다른 글

[백준] 2839 설탕배달  (0) 2023.10.17
[백준] 2798 블랙잭  (0) 2023.10.17
[백준] 행렬 덧셈  (2) 2023.10.17
[백준] 2720 세탁소 사장 동혁  (2) 2023.10.17
[백준] 2675 문자열반복  (0) 2023.10.17
matrix = []

n , m = map(int,input().split())
for i in range(n*2):
    if i < n:
        matrix.append(list(map(int, input().split())))
    else:
        matrix[i-n] = list(map(sum,zip(matrix[i-n] , list(map(int, input().split()))))) # 행렬 B 의 한행씩 받아서, 행렬 A 의 한 행과 더한다.

for i in matrix:
    print(' '.join(list(map(str,i)))) # 출력값 구조 = list 의 값 1개씩 받아서 한칸식 띄어서 출력한다.
반응형

'알고리즘' 카테고리의 다른 글

[백준] 2798 블랙잭  (0) 2023.10.17
[백준] 2750 수 정렬하기  (0) 2023.10.17
[백준] 2720 세탁소 사장 동혁  (2) 2023.10.17
[백준] 2675 문자열반복  (0) 2023.10.17
2630 색종이 만들기  (0) 2023.10.17

+ Recent posts