목록전체 글 (210)
홍우진의 개발 일기장
문제 링크 https://www.acmicpc.net/problem/1312 1312번: 소수 피제수(분자) A와 제수(분모) B가 있다. 두 수를 나누었을 때, 소숫점 아래 N번째 자리수를 구하려고 한다. 예를 들어, A=3, B=4, N=1이라면, A÷B=0.75 이므로 출력 값은 7이 된다. www.acmicpc.net 풀이 코드 A,B,N = map(int, input().split()) for i in range(N) : A = (A%B)*10 result = A//B print(result) 코드 해석 런타임 에러때문에 수학적인 방식으로 풀이하였다.
문제 링크 https://www.acmicpc.net/problem/1417 1417번: 국회의원 선거 첫째 줄에 후보의 수 N이 주어진다. 둘째 줄부터 차례대로 기호 1번을 찍으려고 하는 사람의 수, 기호 2번을 찍으려고 하는 수, 이렇게 총 N개의 줄에 걸쳐 입력이 들어온다. N은 50보다 작거나 같 www.acmicpc.net 풀이 코드 n = int(input()) one = int(input()) vote = [] count = 0 for _ in range(n - 1): vote.append(int(input())) vote.sort(reverse=True) if n == 1: print(0) else: while vote[0] >= one: one += 1 vote[0] -= 1 count ..
문제 링크 https://www.acmicpc.net/problem/1251 1251번: 단어 나누기 알파벳 소문자로 이루어진 단어를 가지고 아래와 같은 과정을 해 보려고 한다. 먼저 단어에서 임의의 두 부분을 골라서 단어를 쪼갠다. 즉, 주어진 단어를 세 개의 더 작은 단어로 나누는 것이다 www.acmicpc.net 풀이 코드 import sys word = list(map(str, sys.stdin.readline().rstrip("\n"))) res = [] for i in range(1, len(word) - 1): for j in range(i + 1, len(word)): first = word[:i] second = word[i:j] third = word[j:] first.reverse(..
문제 링크 https://www.acmicpc.net/problem/15688 15688번: 수 정렬하기 5 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이며, 같은 수가 여러 번 중복될 수도 있다. www.acmicpc.net 풀이 코드 import sys M=[] N=int(input()) for _ in range(N): M.append(int(sys.stdin.readline())) for i in sorted(M): print(i) 코드 해석 수를 입력받아 배열에 저장 한 후 정렬한 후 출력한다.
문제 링크 https://www.acmicpc.net/problem/1205 1205번: 등수 구하기 첫째 줄에 N, 태수의 새로운 점수, 그리고 P가 주어진다. P는 10보다 크거나 같고, 50보다 작거나 같은 정수, N은 0보다 크거나 같고, P보다 작거나 같은 정수이다. 그리고 모든 점수는 2,000,000,000보 www.acmicpc.net 풀이 코드 n, new, p = map(int, input().split()) if n == 0: print(1) else: score = list(map(int, input().split())) if n == p and score[-1] >= new: print(-1) else: res = n + 1 for i in range(n): if score[i]
문제 링크 https://www.acmicpc.net/problem/1755 1755번: 숫자놀이 79를 영어로 읽되 숫자 단위로 하나씩 읽는다면 "seven nine"이 된다. 80은 마찬가지로 "eight zero"라고 읽는다. 79는 80보다 작지만, 영어로 숫자 하나씩 읽는다면 "eight zero"가 "seven nine"보다 사전순으로 www.acmicpc.net 풀이 코드 m, n = map(int, input().split()) dict = {'1':'one', '2':'two', '3':'three', '4':'four', '5':'five', '6':'six', '7':'seven', '8':'eight', '9':'nine', '0':'zero'} l = [] for i in rang..
저도 이 방법으로 해결하였습니다. 1. PC 강제 재부팅을 3번 시도 (PC 강제 재부팅 : Power Off 버튼 5초 이상 누름(3회 반복) ) 2. 파란 화면이 뜨면 문제 해결 클릭 -> 고급 옵션 -> 시작 설정 -> 다시 시작 클릭 3. 화면이 꺼졌다가 나타나는 화면에서 4번 안전 모드를 선택하면 됩니다. 그러면 컴퓨터가 시작되며 바탕화면이 아예 검은색이 되고 UI가 커집니다. 이 상태에서 1. 제어판에 들어간다 2. 프로그램 추가/제거 클릭 3. 알약을 찾아서 제거한다. 제거 완료 후 재부팅을 하면 해결됩니다.
문제 링크 https://www.acmicpc.net/problem/10211 10211번: Maximum Subarray 크기 N인 정수형 배열 X가 있을 때, X의 부분 배열(X의 연속한 일부분) 중 각 원소의 합이 가장 큰 부분 배열을 찾는 Maximum subarray problem(최대 부분배열 문제)은 컴퓨터 과학에서 매우 잘 알려져 있 www.acmicpc.net 풀이 코드 t = int(input()) for _ in range(t): n = int(input()) arr = list(map(int, input().split())) dp = [0] * n dp[0] = arr[0] for i in range(1, n): dp[i] = max(dp[i-1]+arr[i], arr[i]) pri..