목록분류 전체보기 (392)
HTD
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/diWFBW/btq6imRr6mE/3QG0p7uHWwmVqwJGkQgnkk/img.png)
https://www.acmicpc.net/problem/1802 1802번: 종이 접기 첫째 줄에 테스트 케이스의 개수 T가 주어진다. T는 1000보다 작거나 같은 자연수이다. 둘째 줄부터 T개의 줄에 각각의 종이가 어떻게 접혀있는지가 주어진다. 종이의 정보는 문자열로 주어지며, 1 www.acmicpc.net import sys input = sys.stdin.readline def isAvailableStr(str): todo = list(str) while len(todo) >= 3: for i in range(2, len(todo), 2): if todo[i-2] == todo[i]: return False nextTodo = [] for i in range(1, len(todo), 2): n..
https://www.acmicpc.net/problem/1911 1911번: 흙길 보수하기 어젯밤 겨울 캠프 장소에서 월드 본원까지 이어지는, 흙으로 된 비밀길 위에 폭우가 내려서 N (1
https://www.acmicpc.net/problem/2141 2141번: 우체국 첫째 줄에 N(1≤N≤100,000)이 주어진다. 다음 N개의 줄에는 X[1] A[1], X[2] A[2], …, X[N] A[N]이 주어진다. 범위는 |X[i]|≤1,000,000,000, 0≤A[i]≤1,000,000,000 이며 모든 입력은 정수이다. www.acmicpc.net import sys input = sys.stdin.readline N = int(input()) postOffice = [list(map(int, input().split())) for _ in range(N)] postOffice.sort(key=lambda x: x[0]) mid = round(sum(p for _, p in post..
0. build.gradle implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.retrofit2:converter-gson:2.9.0' 저장 후 'Sync Project With Gradle Files'는 필수이다. 1. Interface 및 데이터 형식 지정 MyApi.kt import retrofit2.Call import retrofit2.http.GET import retrofit2.http.Header import retrofit2.http.Query interface MyApi { @GET("ex/api.json") fun getSearchKeyword( @Header("h1") h1: Stri..
https://www.acmicpc.net/problem/2012 2012번: 등수 매기기 첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 500,000) 둘째 줄부터 N개의 줄에 걸쳐 각 사람의 예상 등수가 순서대로 주어진다. 예상 등수는 500,000 이하의 자연수이다. www.acmicpc.net import sys input = sys.stdin.readline N = int(input()) scores = sorted([int(input()) for _ in range(N)]) print(sum(abs(scores[i]-(i+1)) for i in range(N))) 등수의 중복이 없으므로, 내림차순으로 정렬하고, i에 대해 for문을 돌면서 scores[i]와 i+1의 차이를 합해주면 답이 ..
https://www.acmicpc.net/problem/1082 import sys input = sys.stdin.readline def getNumbersWithMaxDigit(): global money numbersWithMaxDigit = [] # 0 제외한 숫자들 중에 가장 싼 것으로 첫자리 결정 minCost, minIndex = getMinCostAndIndex(costs[1:10]) if money - minCost < 0: return [] money -= minCost numbersWithMaxDigit.append(minIndex+1) # 가장 싼 것으로 남은 자리들 결정 minCost, minIndex = getMinCostAndIndex(costs) while money-min..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/beeBiB/btq5LGDDUJR/FWk2QQnLr5q7zJFq8ECpd0/img.png)
https://www.acmicpc.net/problem/2812 2812번: 크게 만들기 N자리 숫자가 주어졌을 때, 여기서 숫자 K개를 지워서 얻을 수 있는 가장 큰 수를 구하는 프로그램을 작성하시오. www.acmicpc.net import sys input = sys.stdin.readline # p 이전 숫자들 중에 -1이 아닌 것이 있다면 해당 인덱스를 받아옴 def getPreviousNumberIndex(p, numberList): p -= 1 while p >= 0: if numberList[p] == -1: p -= 1 else: return p return -1 def getRemovedMaxNumberList(numberList): kCount = 0 p, n = 0, 1 # 앞에서..
https://www.acmicpc.net/problem/12970 12970번: AB 첫째 줄에 문제의 조건을 만족하는 문자열 S를 출력한다. 가능한 S가 여러 가지라면, 아무거나 출력한다. 만약, 그러한 S가 존재하지 않는 경우에는 -1을 출력한다. www.acmicpc.net import sys input = sys.stdin.readline def getStr(N, K): curStr = ['B']*N aCount = 0 curK = 0 lastAIndex = -1 while curK < K: if lastAIndex AABBBB 순서로 흘러간다. 그러면 문자열이 변화할 때 2가지의 패턴을 가진다. 첫째는 A를 앞으로 밀어내는 식, 두번째는 A를 하나 추가하는 것이다. 이제 후자의 패턴을 분석해보..
https://www.acmicpc.net/problem/1080 1080번: 행렬 첫째 줄에 행렬의 크기 N M이 주어진다. N과 M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 행렬 A가 주어지고, 그 다음줄부터 N개의 줄에는 행렬 B가 주어진다. www.acmicpc.net import sys input = sys.stdin.readline def convertMatrix(x, y): if not (0