반응형

공부 124

백준 1436번: 영화감독 숌 [C++]

https://www.acmicpc.net/problem/1436 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net 코드 #include using namespace std; bool judge_666(int n) { string s = to_string(n); for(int i=0; i n; while(true) { if(judge_666(now)) { cnt ++; } if(cnt == n) { cout

백준 1018번: 체스판 다시 칠하기 [C++]

https://www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 코드 #include using namespace std; char case1[8][8] = {{'W','B','W','B','W','B','W','B'}, {'B','W','B','W','B','W','B','W'}, {'W','B','W','B','W','B','W','B'}, {'B','W','B','W','B','W','B','W'}, {'W','B','W','B','W','B','..

백준 7568번: 덩치 [C++]

https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 코드 #include #include using namespace std; int main() { vector people; vector rank; int w, h, n; cin >> n; //init for(int i=0; i> w >> h; people.push_back(pair(w, h)); rank.push_back(1); } int l = people.size(); for(i..

백준 2231번: 분해합 [C++]

https://www.acmicpc.net/problem/2231 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net 코드 #include using namespace std; int decompose(int n) { int de_num = n; while(n != 0) { de_num += n%10; n /= 10; } return de_num; } int main() { int n, answer = 0;; cin >> n; for(int i=1; i

백준 2798번: 블랙잭 [C++]

https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 코드 #include #include using namespace std; int sum_triple(vector v, int index) { return v[index] + v[index+1] + v[index+2]; } int main() { int n, m, answer = -1; vector cards; cin >> n >> m; for(int i=0; i>..

백준 1002번: 터렛 [C++]

https://www.acmicpc.net/problem/11729 11729번: 하노이 탑 이동 순서 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 www.acmicpc.net 코드 #include #include using namespace std; void hanoi(int n, int start, int mid, int end) { if(n == 1) { printf("%d %d\n", start, end); } else { hanoi(n - 1, start, end, mid); printf("%d %d\n", start, end); hanoi(n - ..

백준 2447번: 별 찍기-10 [C++]

https://www.acmicpc.net/problem/2447 2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net 코드 #include using namespace std; char pattern[2187][2187]; void init(int n) { for(int i=0; i

백준 10870번: 피보나치 수 5 [C++]

https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 코드 #include #include using namespace std; int main() { vector fibo; fibo.push_back(0); fibo.push_back(1); fibo.push_back(1); int n; cin >> n; for(int i=3; i

반응형