일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 스프링
- 통계학
- 동적
- 코테
- 동적계획법
- 프로그래머스
- 파이썬
- 404에러
- DFS
- sort
- 그리디알고리즘
- 퇴각검색
- 정렬
- 코딩테스트
- 스택
- 그리디
- 백트래킹
- 월간 코드 챌린지 시즌2
- 백준
- 소트
- Python
- Backtracking
- 스프링프레임워크
- 최단거리
- 소트인사이드
- 다익스트라
- 최빈값
- 브루트포스
- 2중포문
- 덩치
- Today
- Total
목록코딩테스트/백준 (58)
취준생의 코딩테스트 연습기
# 문제 링크 www.acmicpc.net/problem/11650 11650번: 좌표 정렬하기 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. www.acmicpc.net # Soultion 1 2 3 4 5 6 7 8 9 10 n = int(input()) li = [] # 2차원리스트 for _ in range(n): xy = list(map(int,input().split())) li.append(xy) li.sort() for i in li: print(i[0],i[1]) cs 3. 2차원 리스트 형태로 ..
# 문제 링크 www.acmicpc.net/problem/1427 1427번: 소트인사이드 첫째 줄에 정렬하고자하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net # Soultion 1 2 3 4 5 6 7 8 9 10 11 n = int(input()) li = [] for i in str(n): li.append(int(i)) # li = list(map(int,str(n))) 으로 변경가능 li.sort(reverse=True) # 내림차순 for i in li: print(i,end='') cs 8. sort함수를 이용하여 list에 들어있는 숫자들을 내림차순시킨다. 10. 정렬된 리스트를 한개씩 출력시킨다. 옵션으로 end=''를 주어..
# 문제 링크 www.acmicpc.net/problem/2108 2108번: 통계학 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. www.acmicpc.net # Solution(실패) 최빈값을 구할때 Counter함수를 사용하지않고 소스를 작성하니 시간초과 문제 발생 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 31 32 33 34 35 n = int(input()) li = [] for _ in range(n): li.append(int(input())) # 산술평균 - 다 더해서 / ..
# 문제 링크 www.acmicpc.net/problem/2750 2750번: 수 정렬하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net # Solution (1) 단순 정렬을 이용 1 2 3 4 5 6 7 8 9 10 n = int(input()) li = [] for i in range(n): li.append(int(input())) li.sort() # 오름차순 정렬 for i in li: print(i) cs 3. 숫자들을 담기위한 리스트 4. for문을 이용하여 n개의 숫자들을 리스트에 담기 7. sort() 함수를 이용하여 ..
# 문제 링크 www.acmicpc.net/problem/1436 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net # Solution 소요시간 : 약 7분 1 2 3 4 5 6 7 8 9 10 11 12 13 # 메모리 : 28776KB # 시간 : 824ms n = int(input()) cnt=0 # 몇번째 종말의 숫자인지 체크 num = 1 while(1): if '666' in str(i): cnt+=1 if cnt==n: print(i) break num+=1 cs 7. 처음에 for문을 이용하려다..
# 문제 링크 www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net # Solution(실패) - 반례를 생각하지 않아서 실패 *반례 -> 8x8 크기로 잡은 판의 첫색의 색이 'W'더라도 'B'인 경우도 같이 확인 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 31 n,m = map(int, input().split(' ')) board = [] for _ ..
# 문제 링크 www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net # Solution 소요시간 : 약 13분 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 # 메모리 : 28776KB # 시간 : 76ms n = int(input()) li = [] # 변수저장 for i in range(n): li.append(list(map(int, input().split()))) # 덩치 비교 for i in range(n): r..
# 문제 링크 www.acmicpc.net/problem/2231 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net # Solution 1 2 3 4 5 6 7 8 9 10 11 12 13 14 n = int(input()) for i in range(n+1): # 모든 경우의 수 확인 # 분해합 구하기 s = i for j in str(i): s += int(j) if s==n: # 생성자가 있는 경우 print(i) break if i==n: # 생성자가 없는 경우 print(0..