본문 바로가기
반응형

알고리즘250

[백준][Python] 17521번 Byte Coin 17521번: Byte Coin 입력은 표준입력을 사용한다. 첫 번째 줄에 요일 수를 나타내는 양의 정수 n과 초기 현금 W(1 ≤ n ≤ 15, 1 ≤ W ≤ 100,000)가 주어진다. 다음 n 개의 줄에서, i번째 줄은 i일의 바이트 코인 가격을 나 www.acmicpc.net 코드 n,w = map(int,input().split()) coin = [] cnt = 0 for _ in range(n): coin.append(int(input())) for i in range(n-1): if coin[i] 0: cnt = w // coin[i] w = w % coin[i] elif coin[i] > coin[i-1]: w += cnt*coin[i.. 2022. 7. 22.
[백준][Python] 14912번 숫자 빈도수 14912번: 숫자 빈도수 자연수 n (1 ≤ n ≤ 100,000)과 한 자리 숫자 d(0~9)가 첫째 줄에 주어진다. www.acmicpc.net 코드 n, num = map(int,input().split()) cnt = 0 for i in range(1,n+1): for a in str(i): if int(a) == num: cnt += 1 print(cnt) 설명 1부터 n까지의 숫자를 string형으로 변환한 후 한 자리씩 주어진 숫자와 비교를 했다. 비교를 할 때는 다시 int형으로 바꿔줬다. 만약 주어진 수와 일치하면 cnt를 1 증가시켰다. 2022. 7. 21.
[백준][Python] 1251번 단어 나누기 1251번: 단어 나누기 알파벳 소문자로 이루어진 단어를 가지고 아래와 같은 과정을 해 보려고 한다. 먼저 단어에서 임의의 두 부분을 골라서 단어를 쪼갠다. 즉, 주어진 단어를 세 개의 더 작은 단어로 나누는 것이다 www.acmicpc.net 코드 word = input() ans_list = [] for i in range(1,len(word)-1): ans = [] for j in range(i+1,len(word)): ans = ((word[0:i:])[::-1])+((word[i:j:])[::-1])+((word[j::])[::-1]) ans_list.append(ans) ans_list.sort() print(ans_list[0]) 설명 단어를 3개로 나눌 수 있는 모든 경우의 수를 확인했다... 2022. 7. 21.
[백준][Python] 11170번 0의 개수 11170번: 0의 개수 N부터 M까지의 수들을 종이에 적었을 때 종이에 적힌 0들을 세는 프로그램을 작성하라. 예를 들어, N, M이 각각 0, 10일 때 0을 세면 0에 하나, 10에 하나가 있으므로 답은 2이다. www.acmicpc.net 코드 t = int(input()) for _ in range(t): n,m = map(int,input().split()) cnt = 0 for i in range(n,m+1): for a in str(i): if a == '0': cnt += 1 print(cnt) 설명 n부터 m까지의 수를 string 형으로 변환하여 '0'이 나올 때마다 cnt를 1씩 증가시켰다. 2022. 7. 20.
반응형