문제링크 : https://www.acmicpc.net/problem/19699 19699번: 소-난다! 지난 번 헛간 청약의 당첨우(牛)가 발표됐다. 청약에 당첨된 소들은 날아갈 듯이 기뻐하다가 진짜로 하늘을 날았다. 하지만 이후로 소들은 날 수 없었다. 그러던 어느 날, 꿀벌에게 쏘이면 잠깐 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int arr[9]; bool check[9000]; sets; int N, M; void func(int cnt, int idx, int sum) { if(cnt == M) //선별할 숫자와 같으면 { if(ch..
문제링크 : https://www.acmicpc.net/problem/12993 12993번: 이동3 첫째 줄에 x와 y가 주어진다. (0 ≤ x, y ≤ 1,000,000,000) www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int x, y; cin >> x >> y; bool flag = 0; if(x==0 && y==0) flag = 1; //예외처리 int mutiple = 1; int i; //곱해진 횟수 for(i=1; i max(x,y)) ..
문제링크 : https://www.acmicpc.net/problem/25947 25947번: 선물할인 입력은 표준입력을 사용한다. 첫 번째 줄에 선물의 개수를 나타내는 양의 정수 $n$ ($1 ≤ n ≤ 100\,000$), 예산을 나타내는 양의 정수 $b$ ($1 ≤ b ≤ 10^9$), 반값 할인을 받을 수 있는 최대 선물의 수를 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int arr[100001]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int N, B, A; cin >> N >>..
문제링크 : https://www.acmicpc.net/problem/2038 2038번: 골롱 수열 Golomb 수열이란 모든 k에 대해 k가 수열상에서 f(k)번 등장하는 단조증가 수열이다. 단조증가 수열이란 k값이 증가함에 따라 f(k)값이 감소하지 않는 수열을 말한다. 여기서 k와 f(k)는 모두 자연수이 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int arr[2000001]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int N; cin >> N; arr[1] = 1; int idx..
문제링크 : https://www.acmicpc.net/problem/14244 14244번: 트리 만들기 n과 m이 주어졌을 때, n개의 노드로 이루어져 있고, m개의 리프로 이루어져 있는 트리를 만드는 프로그램을 작성하시오. 항상 정답이 존재하는 경우만 입력으로 주어진다. 트리는 사이클이 없는 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int N, M; cin >> N >> M; for(int i=0; i
문제링크 : https://www.acmicpc.net/problem/1599 1599번: 민식어 무엇인가를 창조하는 것은 어렵다. 오민식은 지금까지 어려운 다른나라의 언어를 쓰면서 백성들이 고통에 받는 것을 슬퍼하고 새로운 언어를 만들고자 했다. 그는 창조의 고통에 시달리던 중에 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; map m{ {"a",1},{"b",2},{"k",3},{"d",4},{"e",5},{"g",6},{"h",7}, {"i",8},{"l",9},{"m",10},{"n",11},{"ng",12},{"o",13},{"p",14},{..
문제링크 : https://www.acmicpc.net/problem/11292 11292번: 키 큰 사람 입력은 여러개의 테스트케이스로 구성되어있다. 각 테스트케이스는 첫 번째 줄에 학생의 수 N (0 b. second; } vectorv; int main() { ios_base::sync_with_stdio(0); cin.tie(0); while(1) { v.clear(); int T; cin >> T; if(!T) break; for(int i=0; i> s >> h; v.push_back({s, h}); } sort(v.begin(), v.end(), cmp); //내림차순 정렬 cout
문제링크 : https://www.acmicpc.net/problem/9251 9251번: LCS LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int dp[1001][1001]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); string s1, s2; cin ..
문제링크 : https://www.acmicpc.net/problem/14715 14715번: 전생했더니 슬라임 연구자였던 건에 대하여 (Easy) 첫 번째 줄에 처음 주어진 슬라임의 에너지 K (2 ≤ K ≤ 1, 000, 000) 가 주어진다. www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int func(int n) { int cnt = 0; int tmp = n; for(int i=2; i> K; cout
문제링크 : https://www.acmicpc.net/problem/1148 1148번: 단어 만들기 어떤 신문엔 이러한 퍼즐이 있다. 3x3의 표에 영문자가 하나씩 있으며, 이 영문자들을 사용해서 최대한 많은 영단어를 만드는 것이 목표이다. 예를 들면, 아래의 퍼즐판에서는 'LINT', 'TILL', 'BRILLIAN www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int word[200000][26]; //단어 int board[26]; //보드 int cnt[26]; //정답 카운트 int main() { ios_base::sync_with_st..
문제링크 : https://www.acmicpc.net/problem/14562 14562번: 태권왕 첫째 줄에 테스트 케이스의 수 C(1 ≤ C ≤ 100)이 주어진다. 둘째 줄부터 C줄에 걸쳐 테스트 케이스별로 현재 점수 S와 T가 공백을 사이에 두고 주어진다. (1 ≤ S < T ≤ 100) www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; struct Info { int s, t, cnt; }; void bfs(int S, int T, int CNT) { queueq; q.push({S,T,CNT}); while(!q.empty()) { Info ..
문제링크 : https://www.acmicpc.net/problem/12845 12845번: 모두의 마블 영관이는 게임을 좋아한다. 별의별 게임을 다 하지만 그 중에서 제일 좋아하는 게임은 모두의 마블이다. 어김없이 오늘도 영관이는 학교 가는 버스에서 캐릭터 합성 이벤트를 참여했다. 이번 이 www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int arr[1001]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int N; cin >> N; for(int i=0; i> arr[i]; } sort(ar..
문제링크 : https://www.acmicpc.net/problem/2410 2410번: 2의 멱수의 합 첫째 줄에 경우의 수를 출력한다. 답이 커질 수 있으므로 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net #include using namespace std; typedef long long ll; typedef pair pii; const int MAX = 987654321; int dp[1000001]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int N; cin >> N; dp[0] = dp[1] = 1; for(int i=2; i 1,1 / 2 3 -> 1,1,1 / 1,2 4 -> 1,1,1,1 / ..
문제링크 : https://www.acmicpc.net/problem/11561 11561번: 징검다리각 테스트 케이스마다 한 줄에 승택이가 밟을 수 있는 최대 징검다리 수를 출력한다.www.acmicpc.net#include using namespace std;typedef long long ll;typedef pair pii;const int MAX = 987654321;int main(){ ios_base::sync_with_stdio(0); cin.tie(0); int T; cin >> T; while(T--) { ll N, result = 0; cin >> N; ll l = 1, r = sqrt(N) * 2; ..