목록분류 전체보기 (392)
HTD
https://www.acmicpc.net/problem/1043 1043번: 거짓말 지민이는 파티에 가서 이야기 하는 것을 좋아한다. 파티에 갈 때마다, 지민이는 지민이가 가장 좋아하는 이야기를 한다. 지민이는 그 이야기를 말할 때, 있는 그대로 진실로 말하거나 엄청나게 www.acmicpc.net import sys input = sys.stdin.readline def visitPartyKnowledgeablePeoplepartyToAttend(): for ppl in range(1, N+1): if isPeopleKnowledgeable[ppl] == True: for pty in partyToAttend[ppl]: if isPartyKnowledgeable[pty] == False: setIsP..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/QyJJk/btq9jF8it9g/c8XnIDs5qDWOYEeBLdAk1k/img.png)
https://www.acmicpc.net/problem/1893 1893번: 시저 암호 암호학에서, 시저 암호(또는 시프트 암호, 시저 코드, 시저 시프트)는 가장 간단하면서 많이 알려진 암호화 기술 중 하나이다. "시저 암호"라는 이름은 비밀 통신을 위해 이 방법을 개발한 율리 www.acmicpc.net import sys input = sys.stdin.readline def getPi(keyword): keywordLength = len(keyword) pi = [0]*keywordLength j = 0 for i in range(1, keywordLength): while j > 0 and keyword[i] != keyword[j]: j = pi[j-1] if keyword[i] == key..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/enzsYn/btq9fdxWcB8/ZWU5nhO9AnqVCRGcSHfeOk/img.png)
https://www.acmicpc.net/problem/9328 9328번: 열쇠 상근이는 1층 빌딩에 침입해 매우 중요한 문서를 훔쳐오려고 한다. 상근이가 가지고 있는 평면도에는 문서의 위치가 모두 나타나 있다. 빌딩의 문은 모두 잠겨있기 때문에, 문을 열려면 열쇠가 www.acmicpc.net import sys input = sys.stdin.readline dx = [1, -1, 0, 0] dy = [0, 0, -1, 1] def setIsDoorAvailable(keys): if keys != "0": for c in keys: isDoorAvailable[convertAlphabetToNumber(c)] = True def setAvailableDocumentCount(): outerPosi..
정말 간단하다. setCustomCurrentLocationMarkerTrackingImage(int id, MapPOIItem.ImageOffset anchorPointOffset) 메소드 하나만 사용하면 된다. 예시는 아래와 같다. mapView.setCustomCurrentLocationMarkerTrackingImage(R.drawable.marker_current_location, MapPOIItem.ImageOffset(16, 16)) 다만, 여기서 알아야할 것이 두 가지 있다. - id에 해당하는 drawable id는, 비트맵 이미지의 id여야한다. 즉, png 같은 파일을 drawable에 넣고, 이것을 참조하여야 한다는 의미이다. - anchorPointOffset은 중점을 설정하는 부..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/1996q/btq9cHsgFA2/XbHBk78vo2xO4gWnxUAHkk/img.png)
https://www.acmicpc.net/problem/2623 2623번: 음악프로그램 첫째 줄에는 가수의 수 N과 보조 PD의 수 M이 주어진다. 가수는 번호 1, 2,…,N 으로 표시한다. 둘째 줄부터 각 보조 PD가 정한 순서들이 한 줄에 하나씩 나온다. 각 줄의 맨 앞에는 보조 PD가 담당한 www.acmicpc.net import sys input = sys.stdin.readline def solution(): # input / set childs childs = [[] for _ in range(N+1)] for _ in range(M): curNums = list(map(int, input().split())) curLen = curNums[0] if curLen >= 2: for i ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bFjtaF/btq88Msdyvi/3ERUFwfXavjVwpEF0M370K/img.png)
https://www.acmicpc.net/problem/2473 2473번: 세 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 3 이상 5,000 이하의 정수이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 수들은 모두 -1,000,000,000 이상 www.acmicpc.net import sys input = sys.stdin.readline INF = 3000000000 def getMinAbsFluids(): minAbsSum = INF minAbsFluids = [0, 0, 0] for i in range(N-2): left, right = i + 1, N - 1 while left < right: curSum = fluids[i] + flu..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/zlWFJ/btq811pkdCN/nM5kxplirRqqinp8C6GZm0/img.png)
https://www.acmicpc.net/problem/2467 2467번: 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하의 정수이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 오름차순으로 입력되며, 이 수들은 모두 - www.acmicpc.net import sys input = sys.stdin.readline def getMinAbsIndices(): left, right = 0, N-1 minAbsSum = 2000000001 minAbsIndices = [-1, -1] while left < right: curSum = nums[left] + nums[right] curAbsSum = abs(curSum) if minAbsSu..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/IrLjV/btq8Uam3bot/gwDf9aADOzggj3q72I45Ak/img.png)
https://www.acmicpc.net/problem/2239 2239번: 스도쿠 스도쿠는 매우 간단한 숫자 퍼즐이다. 9×9 크기의 보드가 있을 때, 각 행과 각 열, 그리고 9개의 3×3 크기의 보드에 1부터 9까지의 숫자가 중복 없이 나타나도록 보드를 채우면 된다. 예를 들어 다 www.acmicpc.net import sys input = sys.stdin.readline def getZeroPositions(): zeroPositions = [] for i in range(9): for j in range(9): if nums[i][j] == 0: zeroPositions.append((i, j)) return zeroPositions def dfs(zeroIndex): if zeroLength
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ddpJhN/btq8UOKmlyi/DzFKK7BMJdLL0VLKY889F0/img.png)
https://www.acmicpc.net/problem/2166 import sys input = sys.stdin.readline def getPolygonArea(): polygonArea = 0 x0, y0 = x[0], y[0] for i in range(1, N-1): polygonArea += ( (x[i] - x0) * (y[i+1] - y0) - (x[i+1] - x0) * (y[i] - y0) ) / 2 return abs(polygonArea) if __name__ == '__main__': N = int(input()) x, y = [], [] for _ in range(N): curX, curY = list(map(int, input().split())) x.append(curX)..
https://www.acmicpc.net/problem/2098 2098번: 외판원 순회 첫째 줄에 도시의 수 N이 주어진다. (2 ≤ N ≤ 16) 다음 N개의 줄에는 비용 행렬이 주어진다. 각 행렬의 성분은 1,000,000 이하의 양의 정수이며, 갈 수 없는 경우는 0이 주어진다. W[i][j]는 도시 i에서 j www.acmicpc.net import sys input = sys.stdin.readline def getMinCost(index, isVisited): # Base Case # 모든 곳을 방문했을 경우 if isVisited == MAX_BINARY: if W[index][START_INDEX] != 0: return W[index][START_INDEX] else: return I..