구현(Implementation)
-
백준 3040번: 백설 공주와 일곱 난쟁이구현(Implementation) 2018. 7. 5. 17:41
https://www.acmicpc.net/problem/3040 1. 문제매일 매일 일곱 난쟁이는 광산으로 일을 하러 간다. 난쟁이가 일을 하는 동안 백설공주는 그들을 위해 저녁 식사를 준비한다. 백설공주는 의자 일곱개, 접시 일곱개, 나이프 일곱개를 준비한다. 어느날 광산에서 아홉 난쟁이가 돌아왔다. (왜 그리고 어떻게 아홉 난쟁이가 돌아왔는지는 아무도 모른다) 아홉 난쟁이는 각각 자신이 백설공주의 일곱 난쟁이라고 우기고 있다. 백설공주는 이런 일이 생길 것을 대비해서, 난쟁이가 쓰고 다니는 모자에 100보다 작은 양의 정수를 적어 놓았다. 사실 백설 공주는 공주가 되기 전에 매우 유명한 수학자였다. 따라서, 일곱 난쟁이의 모자에 써 있는 숫자의 합이 100이 되도록 적어 놓았다. 아홉 난쟁이의 모자..
-
백준 15729번: 방탈출구현(Implementation) 2018. 7. 5. 15:06
https://www.acmicpc.net/problem/15729 1. 문제방탈출 게임을 하던 혜민이는 마지막 문제에 봉착했다. 단서는 다음과 같다. 앞에는 일렬로 놓여진 N개의 버튼이 모두 불이 꺼진 상태로 있다.0 또는 1로 구성되어 있는 N자리 수가 적힌 쪽지가 있다.0은 불이 꺼진 버튼, 1은 불이 켜진 버튼을 뜻한다.불이 켜져 있는 버튼을 누르면 불이 꺼지고, 불이 꺼져 있는 버튼을 누르면 불이 켜진다.버튼을 누르면 그 버튼 뿐만이 아닌 오른쪽 두 개의 버튼도 같이 눌린다. 혜민이는 현재 모두 불이 꺼진 상태에서 버튼을 최소로 눌러서 쪽지와 똑같은 상태로 만들어야 한다는 것을 알아냈다! 혜민이를 도와줘서 방탈출 게임에 성공하자. 2. 알고리즘키워드 - 구현 3. 코드 12345678910111..
-
백준 14920번: 3n1+1 수열구현(Implementation) 2018. 7. 3. 10:50
https://www.acmicpc.net/problem/14920 1. 문제 다음의 점화식에 의해 정해지는 수열 C(n)을 생각하자: 123 C(n+1) = C(n)/2 (C(n)이 짝수일 때) = 3*C(n)+1 (C(n)이 홀수일 때)cs 초항 C(1)이 자연수로 주어지면, 이 점화식은 자연수로 이루어지는 수열을 정한다. 예를 들어, C(1)=26이면, 다음의 수열이 된다.26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1, 4, 2, 1, 4, 2, 1, ...이 경우, 수열의 뒷부분은 4, 2, 1 이 끝없이 반복된다. 실제로 C(1)이 5×260보다 작은 자연수인 모든 수열은 언젠가는 4, 2, 1로 끝나게 된다는 것이 알려져 있다.주어진 입력 C(1)에 대하여 C(n)이 처음..
-
백준 1546번: 평균구현(Implementation) 2018. 7. 3. 10:17
https://www.acmicpc.net/problem/1546 1. 문제입력 받은 수에서 평균을 구하는 문제 2. 알고리즘키워드 - 구현, 수학 3. 코드 12345678910111213141516171819202122232425262728293031323334353637#include #include #include #include #include // greater 사용 위해 필요 #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(0); // scanf 안쓸 경우 쓰세요. Cin 사용시 int N; cin >> N; vector arr(N); int maxValue = 0; for (int i=0; i> ..
-
백준 2839번: 설탕 배탈구현(Implementation) 2018. 7. 3. 10:11
https://www.acmicpc.net/problem/2839 1. 문제상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다. 상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오. 2. 알고리즘키워드 - 정수론, 구현, 수학 * 접근..
-
백준 4344번: 평균은 넘겠지구현(Implementation) 2018. 7. 3. 10:09
https://www.acmicpc.net/problem/4344 1. 문제대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 2. 알고리즘키워드 - 구현참고 - 자리수 출력에 유의 할 것 3. 코드 1234567891011121314151617181920212223242526272829303132333435363738394041#include #include #include #include #include // greater 사용 위해 필요 #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(0); // scanf 안쓸 경우 쓰세요. Cin 사용시 in..
-
백준 2526번: 싸이클구현(Implementation) 2018. 6. 23. 14:51
https://www.acmicpc.net/problem/2526 1. 문제두 자연수 N과 P를 가지고 다음 과정을 거쳐서 나오는 숫자들을 차례대로 출력해보자. 처음 출력하는 숫자는 N이고, 두 번째 이후 출력하는 숫자들은 N을 곱하고 P로 나눈 나머지를 구하는 과정을 반복하여 구한다. 즉, 먼저 N에 N을 곱하고, 이 수를 P로 나눈 나머지를 두 번째에 출력한다. 다음에는 이 나머지에 N을 곱하고 P로 나눈 나머지를 출력한다. 다음에는 이 나머지에 N을 곱한 후 P로 나눈 나머지를 출력한다. 이 과정을 계속 반복해보면 출력되는 숫자들에는 반복되는 부분이 있다. 예를 들어서, N=67, P=31인 경우를 생각해보자. 처음 출력되는 숫자는 67이고, 두 번째로 출력되는 숫자는 67*67 = 4489를 31..
-
Codeforces Round #488 by NEAR (Div. 2) - A. Fingerprints구현(Implementation) 2018. 6. 20. 15:53
http://codeforces.com/contest/994/problem/A 1. 문제 A. Fingerprintstime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are locked in a room with a door that has a keypad with 10 keys corresponding to digits from 0 to 9. To escape from the room, you need to enter a correct code. You also have a sequence of digits.Some keys on the keypad have fing..