알고리즘
-
백준 3076번: 상근이의 체스판출력(Print) 2018. 7. 5. 17:55
1. 문제출력 문제 2. 알고리즘키워드 - 구현, 출력 3. 코드 12345678910111213141516171819202122232425262728293031323334353637383940414243444546#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define MAX_SIZE 100#define INF 0x7fffffff#define CENDL "\n"#define ll long long /** @memory - 1984 kb* @time - 0 ms*/ int main() { cin.tie(0); std::..
-
백준 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..
-
백준 14921번: 용액 합성하기정렬(Sort) 2018. 7. 3. 10:52
https://www.acmicpc.net/problem/14921 1. 문제홍익대 화학연구소는 다양한 용액을 보유하고 있다. 각 용액은 -100,000,000부터 100,000,000사이의 특성 값을 갖는데, 같은 양의 두 용액을 혼합하면, 그 특성값은 두 용액의 특성값의 합이 된다. 당신은 두 용액을 혼합하여 특성값이 0에 가장 가까운 용액을 만들려고 하는데, 각 용액은 10ml시험관에 10ml씩 들어있고, 빈 20ml 시험관이 단 하나 있다. 게다가 용액을 계량할 수 없어서, 두 용액을 섞을 때는 10ml씩 섞어서 20ml로 만드는데, 단 한번밖에 할 수 없다. 그래서 미리 용액의 특성값들을 보고, 어떤 두 용액을 섞을 것인지 정해야 한다. 예를 들어, 연구소에 있는 용액들의 특성값이 [-101, ..
-
백준 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)이 처음..
-
백준 10757번: 큰 수 A+B정수론(Number theory) 2018. 7. 3. 10:45
https://www.acmicpc.net/problem/10757 1. 문제A+B를 계산하시오. 2. 알고리즘키워드 - 큰 수, 사칙 연산 * 접근int 유효 범위가 넘는 숫자의 덧셈이다. 일반적인 사칙 연산으로 풀수 없다.string 으로 입력을 받고 index 에 따라 처리 하도록 한다. * 최노키오 소견아 감히 임재훈씨가...당황안하고 잘하고 있네요 그렇죠 케리가 있을때 만해야 되요.이야~ 또한번 감탄하게 하네요. 당황하지 않고 잘 푸네요. 감히 재훈씨가 하하하전에는 이런 문제 풀면서 당황하면서 멘탈 붕괴 했었는데 많이 침착해 졌네요 호호호 3. 코드 1234567891011121314151617181920212223242526272829303132333435363738394041#include ..
-
백준 10989번: 수 정렬하기 3정렬(Sort) 2018. 7. 3. 10:26
https://www.acmicpc.net/problem/10989 1. 문제N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 2. 알고리즘키워드 - 정렬메모리 제약사항이 8MB 이고 들어오는 입력으로 들어오는 숫자가 10000000 개 임으로 일반적인 sort 함수를 사용해서는 풀 수 없다.입력으로 들어오는 숫자의 상한 값이 10000 이상 입력되지 않기 때문에 모든 수를 메모리에 적제할 필요는 없다. 10000 * 4 = 4만 바이트에 용량으로 처리가 가능하다. 3. 코드 1234567891011121314151617181920212223242526272829#include #include // min#include #include #include #include typed..
-
백준 2902번: KMP는 왜 KMP일까?문자열(String) 2018. 7. 3. 10:22
https://www.acmicpc.net/problem/2902 1. 문제대문자 출력 하는 문제 2. 알고리즘키워드 - 구현, 문자열O(n) 3. 코드 12345678910111213141516171819202122#include #include // min#include #include #include using namespace std; int main() { string word; cin >> word; const int size = word.size(); for (int i = 0; i = 'A' && ch