문제링크 : https://www.acmicpc.net/problem/19637 19637번: IF문 좀 대신 써줘 첫 번째 줄에는 칭호의 개수 N (1 ≤ N ≤ 105)과 칭호를 출력해야 하는 캐릭터들의 개수 M (1 ≤ M ≤ 105)이 빈칸을 사이에 두고 주어진다. (1 ≤ N, M ≤ 105) 두 번째 줄부터 N개의 줄에 각 칭 www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair int main(void) { ios_base::sync_with_stdio(false); cin.tie(0); int N, M; cin >> N >> M; map m; for(int..
문제링크 : https://www.acmicpc.net/problem/10836 10836번: 여왕벌 입력의 첫 줄에는 격자칸의 가로와 세로 크기 M(2 ≤ M ≤ 700)과 날짜 수 N(1 ≤ N ≤ 1,000,000)이 자연수로 주어진다. 첫날 아침의 애벌레 크기는 모두 1이므로 입력에 주어지지 않는다. 다음 N개의 www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair int arr[1401]; int main(void) { ios_base::sync_with_stdio(false); cin.tie(0); int M, N; cin >> M >> N; fill(arr,..
문제링크 : https://www.acmicpc.net/problem/1905 1905번: 상자 쌓기 첫 줄에 세 정수 Lx, Ly, N이 주어진다. (1 ≤ Lx, Ly ≤ 1,000, 1 ≤ N ≤ 20,000) Lx와 Ly는 창고의 가로, 세로 길이이며, N은 입고되는 상자의 개수이다. 이후 N개의 줄에 각 상자의 정보가 입고되는 순서 www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair struct xyz { int lx, ly, lz, px, py, pz; }; int main(void) { ios_base::sync_with_stdio(false); cin.t..
문제링크 : https://www.acmicpc.net/problem/6550 6550번: 부분 문자열 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문자열 s 와 t가 빈칸을 사이에 두고 들어온다. s와 t의 길이는 10만을 넘지 않는다. www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pii pair int main(void) { ios_base::sync_with_stdio(false); cin.tie(0); string s, t; while(cin >> s >> t) { int index = 0; for(int i=0; i
문제링크 : https://www.acmicpc.net/problem/5637 5637번: 가장 긴 단어 단어는 알파벳(a-z, A-Z)과 하이픈(-)으로만 이루어져 있다. 단어와 다른 문자(마침표, 숫자, 심볼, 등등등...)로 이루어진 글이 주어졌을 때, 가장 긴 단어를 구하는 프로그램을 작성하시오. Apple의 www.acmicpc.net #include using namespace std; #define ll long long #define pil pair int main(void) { ios_base::sync_with_stdio(false); cin.tie(0); string check; string result; int size = 0; while(1) { char c = getchar();..
문제링크 : https://www.acmicpc.net/problem/14500 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변 www.acmicpc.net #include using namespace std; #define ll long long #define pil pair int arr[500][500], visited[500][500]; int dy[] = {1, -1, 0, 0}; int dx[] = {0, 0, 1, -1}; int N, M, result; void lastshape(int y, int x) { if(y + 1 ..
문제링크 : https://www.acmicpc.net/problem/16112 16112번: 5차 전직 메이플스토리 뉴비 키파가 드디어 레벨 200을 달성하고 5차 전직이라는 시스템을 이용해 캐릭터를 더욱 강력하게 만들려고 합니다. 5차 전직을 하려면 먼저 퀘스트를 통해 아케인스톤이라는 아 www.acmicpc.net #include using namespace std; #define ll long long #define pil pair ll arr[300000]; int main(void) { ios_base::sync_with_stdio(false); cin.tie(0); int N, K; cin >> N >> K; for(int i=0; i> arr[i]; } sort(arr, arr+N); ll..
문제링크 : https://www.acmicpc.net/problem/18223 18223번: 민준이와 마산 그리고 건우 입력의 첫 번째 줄에 정점의 개수 V와 간선의 개수 E, 그리고 건우가 위치한 정점 P가 주어진다. (2 ≤ V ≤ 5,000, 1 ≤ E ≤ 10,000, 1 ≤ P ≤ V) 두 번째 줄부터 E개의 줄에 걸쳐 각 간선의 정보 www.acmicpc.net #include using namespace std; #define ll long long #define MAX 987654321 #define pil pair int V, E, P; int point[5001]; vector edges[5001]; void dijkstra(int start) { priority_queue pq; /..
문제링크 : https://www.acmicpc.net/problem/1720 1720번: 타일 코드 2×N 크기의 넓은 판을 1×2 (또는 2×1) 크기와 2×2 크기의 타일로 채우려고 한다. 여러 가지 경우가 있을 수 있으므로, 각각을 하나의 코드로 대응시켜서 암호화에 이용하려고 한다. 그런데 문제가 www.acmicpc.net #include using namespace std; #define ll long long int main(void) { ios_base::sync_with_stdio(false); cin.tie(0); int N, dp[31]; cin >> N; dp[0] = 1; dp[1] = 1; for(int i=2; i
문제링크 : https://www.acmicpc.net/problem/5212 5212번: 지구 온난화 첫째 줄에 지도의 크기 R과 C (1 ≤ R, C ≤ 10)가 주어진다. 다음 R개 줄에는 현재 지도가 주어진다. www.acmicpc.net #include using namespace std; #define ll long long int main(void) { ios_base::sync_with_stdio(false); cin.tie(0); char arr[10][10]; char result[10][10]; int R, C, cnt; int minx = 987654321, miny = 987654321, maxx = -1, maxy = -1; cin >> R >> C; for(int i=0; i ..
문제링크 : https://www.acmicpc.net/problem/2670 2670번: 연속부분최대곱 첫째 줄은 나열된 양의 실수들의 개수 N이 주어지고, 그 다음 줄부터 N개의 수가 한 줄에 하나씩 들어 있다. N은 10,000 이하의 자연수이다. 실수는 소수점 첫째자리까지 주어지며, 0.0보다 크거나 www.acmicpc.net #include using namespace std; #define ll long long double dp[10000]; double arr[10000]; int main(void) { ios_base::sync_with_stdio(false); cin.tie(0); int N; cin >> N; double result = 0.0; for(int i=0; i> arr[..
문제링크 : https://www.acmicpc.net/problem/16398 16398번: 행성 연결 홍익 제국의 중심은 행성 T이다. 제국의 황제 윤석이는 행성 T에서 제국을 효과적으로 통치하기 위해서, N개의 행성 간에 플로우를 설치하려고 한다. 두 행성 간에 플로우를 설치하면 제국의 함 www.acmicpc.net #include using namespace std; #define ll long long struct p { int u, v, weight; bool operator> N; for(int i=0; i num; if(i
문제링크 : https://www.acmicpc.net/problem/14567 14567번: 선수과목 (Prerequisite) 3개의 과목이 있고, 2번 과목을 이수하기 위해서는 1번 과목을 이수해야 하고, 3번 과목을 이수하기 위해서는 2번 과목을 이수해야 한다. www.acmicpc.net #include using namespace std; #define ll long long vectorv[1000]; int arr[1000]; int result[1000]; queueq; int main(void) { ios_base::sync_with_stdio(false); cin.tie(0); int N, M, A, B; cin >> N >> M; while(M--) { cin >> A >> B; v[..