일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 23288
- 자바 코테
- 백준2251
- 완전탐색
- 전화번호속의암호
- 주사위굴리기2
- 백준15652
- 자바
- D드라이브생성
- 에라토스테네스의채
- 재귀함수
- 알고리즘개념
- java
- 코테준비
- 코테
- 정보처리기사
- 삼성역테
- 중복순열
- 파티션 크기 조정
- N과M
- BFS
- 알고리즘
- 완탐
- Bfs와DFS
- 백준
- 백준13458
- 정올 1620
- 순열
- 중복조합
- 볼륨 만들기
- Today
- Total
목록알고리즘/백준 (87)
뚱땅뚱땅
* 출처: 백준 단계별로 풀어보기 브루트포스 편 www.acmicpc.net/problem/2231 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net 내 생각 1. 첫번째 풀이 '순열'스럽게 문제를 풀어봤다. 다만 범위를 너무 넓게 잡고, 답을 구하더라도 끝까지 탐색하기 때문에 시간이 많이 걸린다. 다른 답안에 비해 10배 이내로 걸리는 듯하다. public class BOJ2231 { static int N; static int NJari; static int numbers[]; ..
* 출처: 백준 단계별로 풀어보기 브루트 포스 편 www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 내 생각 1. 첫번째 풀이 1시간 정도 고민하다가 더이상 생각을 못하겠어서 못 풀었다. ArrayList를 써보고 싶어서, 블랙잭 카드를 list에 담고, 애초에 정렬했다. 그 후에 스택에다가 list의 인덱스를 push해서 완전 탐색하는 방법을 고민하다가 머리 빠개질 거 같아서 그만 뒀다... 그냥 3중 for 문 돌리면 끝이었..
* 출처: www.acmicpc.net/problem/1244 1244번: 스위치 켜고 끄기 첫째 줄에는 스위치 개수가 주어진다. 스위치 개수는 100 이하인 양의 정수이다. 둘째 줄에는 각 스위치의 상태가 주어진다. 켜져 있으면 1, 꺼져있으면 0이라고 표시하고 사이에 빈칸이 하나씩 www.acmicpc.net 내 생각 재귀함수를 복습하는 김에 재귀로 풀어봤다. 시간이 좀 걸렸던 이유는 문제를 잘 안 읽은 게 크다. 출력부분을 보면, 한줄에 20개의 스위치번호를 출력하도록 써있는데, 이걸 보지 못했다. 그리고 boy() 부분에서 ball += ball;을 해서 계속 틀렸었다. 문제 좀 더 주의깊게 좀 읽자!! import java.io.*; import java.util.StringTokenizer; ..
* 출처: 백준 www.acmicpc.net/problem/17478 17478번: 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대 www.acmicpc.net 내 생각 StringBuilder 타입의 line을 전역변수로 선언해서, 재귀함수에서 계속 append를 할 수 있게 한다. "라고 답변하였지"를 출력할 때는 ___수가 4개씩 줄어드는데, 이건 StringBuilder의 setLength() 함수를 이용했다. import java.io.*; public class Main { static StringBuilder line = new Strin..
* 출처: 백준 단계별로 풀어보기 기본 수학2 www.acmicpc.net/problem/9020 9020번: 골드바흐의 추측 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아 www.acmicpc.net 소수 문제! 우선 에레토스테네스의 체를 이용해 prime 배열을 초기화 시켜준다. 이후, 두 소수의 합이 n이 되는 쌍을 찾으면 되는 것이다. n = first + second라고 할 때, 여기서 n을 절반으로 나눈 다음, first는 n/2에서 하나씩 줄여가고, second는 n/2에서 하나씩 증가시키면서 찾아가면 된다. import java...