전체 글 226

백준 2961: 도영이가 만든 맛있는 음식

https://www.acmicpc.net/problem/2961 2961번: 도영이가 만든 맛있는 음식 첫째 줄에 재료의 개수 N(1 ≤ N ≤ 10)이 주어진다. 다음 N개 줄에는 그 재료의 신맛과 쓴맛이 공백으로 구분되어 주어진다. 모든 재료를 사용해서 요리를 만들었을 때, 그 요리의 신맛과 쓴맛은 www.acmicpc.net #include #include #define fastio() ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); using namespace std; int n; pair foods[11]; int dfs(int i, int mul, int plu) { if (i == n and mul == 1 and plu == 0) return 1111..

설명없음 2022.06.16

백준 2295: 세 수의 합 [C/C++]

https://www.acmicpc.net/problem/2295 2295번: 세 수의 합 우리가 x번째 수, y번째 수, z번째 수를 더해서 k번째 수를 만들었다라고 하자. 위의 예제에서 2+3+5=10의 경우는 x, y, z, k가 차례로 1, 2, 3, 4가 되며, 최적해의 경우는 2, 3, 4, 5가 된다. k번째 수가 최 www.acmicpc.net 1번 : Map을 이용한 코드 #include #include #include #define fastio() ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); using namespace std; int n, ans, lis[1010]; map m; int main() { fastio(); cin >> n; for..

설명없음 2022.06.16

백준 2015: 수들의 합 4 [C/C++]

https://www.acmicpc.net/problem/2015 2015번: 수들의 합 4 첫째 줄에 정수 N과 K가 주어진다. (1 ≤ N ≤ 200,000, |K| ≤ 2,000,000,000) N과 K 사이에는 빈칸이 하나 있다. 둘째 줄에는 배열 A를 이루는 N개의 정수가 빈 칸을 사이에 두고 A[1], A[2], ..., A[N]의 순서로 www.acmicpc.net #include #include #define fastio() ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); using namespace std; long long n, k, cnt, lis[202020], acc[202020]; map m; int main() { fastio(); cin ..

백준 1405: 미친 로봇 [C/C++]

https://www.acmicpc.net/problem/1405 1405번: 미친 로봇 첫째 줄에 N, 동쪽으로 이동할 확률, 서쪽으로 이동할 확률, 남쪽으로 이동할 확률, 북쪽으로 이동할 확률이 주어진다. N은 14보다 작거나 같은 자연수이고, 모든 확률은 100보다 작거나 같은 자 www.acmicpc.net #include #define fastio() ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); using namespace std; long double N, w[4]; // 동, 서, 남, 북 int visited[30][30]; // 방문 여부 확인 int dy[4] = {0, 0, 1, -1}; // 동서남북 int dx[4] = {1, -1, 0, ..

백준 1744: 수 묶기 [C/C++], 다이나믹 프로그래밍

https://www.acmicpc.net/problem/1744 1744번: 수 묶기 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 www.acmicpc.net #include #include #include #define fastio() ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); using namespace std; int N; vector lis; vector dp; void input(); long long dfs(int i, int val); int main() { fastio(); input(); co..

백준 2668: 숫자 고르기 [C언어], 정보올림피아드

https://www.acmicpc.net/problem/2668 2668번: 숫자고르기 세로 두 줄, 가로로 N개의 칸으로 이루어진 표가 있다. 첫째 줄의 각 칸에는 정수 1, 2, …, N이 차례대로 들어 있고 둘째 줄의 각 칸에는 1이상 N이하인 정수가 들어 있다. 첫째 줄에서 숫자를 적절 www.acmicpc.net #include int n, cnt, lis[111]; // 입력, 답, 입력 int cycle[111]; // 사이클 유무 int visited[111]; // 1~N 중 방문한 곳 int value[111]; // 입력 값 중 방문한 곳 void dfs(int num) { if (visited[num]) return; // 이미 방문한 곳이면 더 방문할 필요가 없다 visited[..

백준 7453: 합이 0인 네 정수 [C/C++]

https://www.acmicpc.net/problem/7453 7453번: 합이 0인 네 정수 첫째 줄에 배열의 크기 n (1 ≤ n ≤ 4000)이 주어진다. 다음 n개 줄에는 A, B, C, D에 포함되는 정수가 공백으로 구분되어져서 주어진다. 배열에 들어있는 정수의 절댓값은 최대 228이다. www.acmicpc.net #include #include #include #define fastio() ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); using namespace std; long long N, ans; long long d[4444][4]; void input(); void solve(); int main() { fastio(); input(); ..

설명없음 2022.06.13

백준 17070: 파이프 옮기기 1 [C/C++], 삼성 코딩 테스트

https://www.acmicpc.net/problem/17070 17070번: 파이프 옮기기 1 유현이가 새 집으로 이사했다. 새 집의 크기는 N×N의 격자판으로 나타낼 수 있고, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 (r, c)로 나타낼 수 있다. 여기서 r은 행의 번호, c는 열의 www.acmicpc.net #include #define fastio() ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); using namespace std; int N; int home[22][22]; // 집 int dp[22][22][3]; // 메모이제이션 void input(); void solve(); int dfs(int y, int x, int w..

백준 2636: 치즈 [C/C++], 삼성 코딩 테스트

https://www.acmicpc.net/problem/2636 2636번: 치즈 첫째 줄에는 사각형 모양 판의 세로와 가로의 길이가 양의 정수로 주어진다. 세로와 가로의 길이는 최대 100이다. 판의 각 가로줄의 모양이 윗 줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진 www.acmicpc.net #include using namespace std; int N, M; int dy[4] = { 0, 1, 0, -1 }; int dx[4] = { 1, 0, -1, 0 }; int cheese[111][111]; int tmp[111][111]; bool visited[111][111]; void dfs(int y, int x) { for (int i = 0; i > N >> M; int cnt = 0;..

설명없음 2022.06.13