https://www.acmicpc.net/problem/9184 9184번: 신나는 함수 실행 입력은 세 정수 a, b, c로 이루어져 있으며, 한 줄에 하나씩 주어진다. 입력의 마지막은 -1 -1 -1로 나타내며, 세 정수가 모두 -1인 경우는 입력의 마지막을 제외하면 없다. www.acmicpc.net 이 문제는 동적 계획법 문제이다. 내 풀이 import sys d_abc = [[[0]*21 for i in range(21)] for i in range(21)] def w(a,b,c): if a 20: if d_abc[20][20][20] ==0: d_abc[20][20][20] = w(20,20,20) return d_abc[20][20][20] if a < b and b < c: if d_ab..
https://www.acmicpc.net/problem/10816 10816번: 숫자 카드 2 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 내 풀이 import sys n=int(sys.stdin.readline()) arr_n = list(map(int,sys.stdin.readline().split())) m=int(sys.stdin.readline()) #이 알고리즘은 arr_n을 차례로 순회하여 arr_m에 있는지 체크하는 알고리즘이다. #출력 시 처음 인덱스들의 순서 알기 위해 tmp로 받고..
https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 내 풀이 - 1 import sys n,k = map(int,sys.stdin.readline().split()) coin = [] for i in range(n): coin.append(int(sys.stdin.readline())) len = n count= 0 coin.sort(reverse=True) #print(coin) f..
https://www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 내 풀이 from collections import deque line = input().split('-') res = 0 for i in range(len(line)): lst = list(map(int,str(line[i]).split('+'))) if i==0: res+=sum(lst) else: res-=sum(lst) print(res) 식의 최소값은, - 다음에 오는 식이 괄호로 ..
https://www.acmicpc.net/problem/13305 13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net 내 풀이 import sys n = int(sys.stdin.readline()) road = list(map(int,sys.stdin.readline().split())) city = list(map(int,sys.stdin.readline().split())) res = 0 min_city = city[0] for i in range(n-1): if city[i]
https://www.acmicpc.net/problem/14889 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net 내 풀이 - 주석 from itertools import combinations,permutations import sys n = int(sys.stdin.readline()) arr = [] for i in range(n): arr.append(list(map(int,sys.stdin.readline().split()))) #조합으로 6명이면 3명씩, 4명이면 2명씩 뽑기 combi =list(combinations..
https://www.acmicpc.net/problem/11725 11725번: 트리의 부모 찾기 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. www.acmicpc.net 이 문제는 트리의 부모를 찾는 문제이다. 예전에 C로 트리 문제를 풀었을 때 재귀로 접근했던 미세한 ㅋㅋ 기억이 남아있어 재귀로 시도를 해보려고 했는데 ㅠ 결두번째 테스트케이스에서 무한루프에 빠지면서 결국 성공하지 못했다 ㅠㅠ 아직 BFS와 DFS를 제대로 공부하지 않아서 개념은 알지만 알고리즘을 짜는 것이 조금 힘들었다 ㅠ 인터넷을 참고했는데BFS 방법이라고 한다. BFS는 너비 우선 탐색으로 가까운 노드부터 방문한다. 아래의 코드는 형제 노드들을 모두 모아..
https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 이 문제는 회의실이 한 개이고, 회의들에 대해 최대 몇 개의 회의를 한 회의실에서 진행할 수 있는지 구하는 문제이다. 처음에 문제를 잘못 읽고 회의실이 여러개이고 모든 회의를 진행하려면 필요한 회의실의 최소 갯수를 구하는 문제인 줄 잘못 알았다. 문제를 잘 읽자 ... 이 문제는 생각하기에 따라 매우 간단히 풀릴 수 있는 문제였는데 나는 진행할 수 있는 회의의 "최대 갯수"에 초점을 맞춰 풀었고 오답이 나왔다 ㅠ 질문 게시판의 반례를 모두 넣어보았는데 잘 나와서 아직도 반례가 무엇일까 미스테리이다.. 문제에 보면..
- Total
- Today
- Yesterday
- 백준
- Java
- brute force
- javascript
- append
- 정렬
- Oracle
- web
- 파이썬
- 덱
- 장고
- 단계별로풀어보기
- jsp
- 프로그래머스
- 자바
- html
- CSS
- R
- 자바스크립트
- python
- baekjoon
- 큐
- 문자열
- jQuery
- 고득점 키트
- Django
- 스프링
- 브루트 포스
- bootstrap
- Case When
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |