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 이 문제는 회의실이 한 개이고, 회의들에 대해 최대 몇 개의 회의를 한 회의실에서 진행할 수 있는지 구하는 문제이다. 처음에 문제를 잘못 읽고 회의실이 여러개이고 모든 회의를 진행하려면 필요한 회의실의 최소 갯수를 구하는 문제인 줄 잘못 알았다. 문제를 잘 읽자 ... 이 문제는 생각하기에 따라 매우 간단히 풀릴 수 있는 문제였는데 나는 진행할 수 있는 회의의 "최대 갯수"에 초점을 맞춰 풀었고 오답이 나왔다 ㅠ 질문 게시판의 반례를 모두 넣어보았는데 잘 나와서 아직도 반례가 무엇일까 미스테리이다.. 문제에 보면..
https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 나의 풀이 n = int(input()) P = sorted(map(int,input().split())) sum = 0 for i in range(n): sum += P[i]*(n-i) print(sum) 만약 3, 1, 4, 3, 2 이고 이 순서대로 돈을 인출한다면 1번째 사람이 인출하는 데에 걸리는 시간: 3 2번째 사람이 인출하는 데에 걸리는 시간: 3 1 3번째 사람이 인출하는 데에 걸리는 시간: 3 1 4 4번째 ..
https://www.acmicpc.net/problem/2675 2675번: 문자열 반복 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다 www.acmicpc.net 나의 코드 n = int(input()) for i in range(n): res = "" num, line = input().split() for j in range(len(line)): res+=line[j]*int(num) print(res) 다들 비슷하게 푼듯
https://www.acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net 나의 풀이 dict = {chr(c) :-1 for c in range(ord('a'),ord('z')+1)} line = input() for i in range(len(line)): dict[line[len(line)-i-1]] = len(line)-i-1 res_arr = [] res_arr = [value for key,value in dict.items()] print(" "..
https://www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 문제가 어려운 건 아닌데 조건 생각하는게 헷갈려서 조금 오래걸림 그래도 한번에 맞아서 다행이야 .. 틀렸으면 다시 풀 의지가 ㅎ 나의 풀이 import math import sys n,m = map(int,sys.stdin.readline().split()) arr = [sys.stdin.readline() for i in range(n)] #입력받은 수와 8 사이에 계산해서 각각 행과 열..
https://www.acmicpc.net/problem/1436 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net 시도 1 - 성공 n = int(input()) num = 666 i=0 arr = [0]*10001 while(True): if i==n: print(arr[i]) break; if str(num).find("666")>=0: i+=1 arr[i]=num num+=1 n의 범위가 10000이므로 크기가 10001인 배열 만들었다. (인덱스 생각하기 귀찮아서 0~10000중에 0번째 인덱스 값은..
https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 나의 풀이 n = int(input()) res = [1]*n arr = [list(map(int,input().split())) for i in range(n)] for i in range(len(arr)): for j in range(len(arr)): if arr[i][0]
- Total
- Today
- Yesterday
- Case When
- 고득점 키트
- CSS
- 스프링
- 정렬
- 파이썬
- Django
- html
- web
- append
- 브루트 포스
- bootstrap
- 프로그래머스
- R
- 장고
- brute force
- Java
- python
- javascript
- 백준
- 자바스크립트
- baekjoon
- 큐
- Oracle
- 덱
- 문자열
- jsp
- 단계별로풀어보기
- 자바
- jQuery
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |