https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net #include #include #include using namespace std; int N, M; int maze[101][101]; bool visit[101][101]; int dx[4] = { 0,0,1,-1 }; int dy[4] = { 1,-1,0,0 }; int ans[101][101]; queue q; bool is_possible(int row, int col) { if (row = N ..
https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net #include #include #include using namespace std; int N, M; int graph[8][8]; //사용자로부터 입력받을 배열 int map[8][8]; //벽을 설치하기 위한 배열 int spread[8][8]; //벽을 설치하고 바이러스를 확산시킬 배열 int dx[4] = { 0,1,0,-1 }; int dy[4] = { 1,0,-1,0 }; int ans = 0; ..
https://www.acmicpc.net/problem/1019 1019번: 책 페이지 첫째 줄에 0이 총 몇 번 나오는지, 1이 총 몇 번 나오는지, ..., 9가 총 몇 번 나오는지를 공백으로 구분해 출력한다. www.acmicpc.net https://www.slideshare.net/Baekjoon/baekjoon-online-judge-1019 Baekjoon Online Judge 1019번 풀이 https://www.acmicpc.net/problem/1019 "책 페이지" 문제 풀이입니다. www.slideshare.net #include using namespace std; int ans[10]; void calc(int n, int inc) { while (n > 0) { ans[n ..
https://www.acmicpc.net/problem/1015 1015번: 수열 정렬 P[0], P[1], ...., P[N-1]은 0부터 N-1까지(포함)의 수를 한 번씩 포함하고 있는 수열이다. 수열 P를 길이가 N인 배열 A에 적용하면 길이가 N인 배열 B가 된다. 적용하는 방법은 B[P[i]] = A[i]이다. 배열 A가 주 www.acmicpc.net #include #include using namespace std; pair P[51]; int arr[51]; int main() { int N; cin >> N; for(int i=0; i> P[i].first; P[i].second = i; } //P의 first를 기준으로 정렬 sort(P, P+N); //P의 second의 순서대로 ..
https://www.acmicpc.net/problem/9663 9663번: N-Queen N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. www.acmicpc.net Backtracking의 대표적인 예제이다. nonpromising인 node는 pruning하는 것이 DFS와의 차이점이다. #include using namespace std; int N, ans; int col[15]; void queens(int i); bool promising(int i); int main() { cin >> N; queens(0); cout
https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net #include #include using namespace std; int P[1001]; //시간 int main() { int N; cin >> N; for(int i=0; i> P[i]; sort(P, P+N); //오름차순 정렬 int t=P[0]; //1번 타자의 시간을 t에 저장 for(int i=1; i
https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net #include using namespace std; int main() { int N; cin >> N; vector v; int a, b; for(int i=0; i> a >> b; v.push_back(make_pair(b, a)); //종료시간, 시작시간으로 v에 저장 } sort(v.begin(), v.end()); //종료시간의 오름차순 정렬 int time=v[0].first; //첫 회의의 종료 시간을 time으로 설정 int ans=1; //첫 회의의 횟수 포함 for(int i=1; i
https://www.acmicpc.net/problem/4781 4781번: 사탕 가게 각 테스트 케이스의 첫째 줄에는 가게에 있는 사탕 종류의 수 n과 상근이가 가지고 있는 돈의 양 m이 주어진다. (1 ≤ n ≤ 5,000, 0.01 ≤ m ≤ 100.00) m은 항상 소수점 둘째자리까지 주어진다. 다음 n개 www.acmicpc.net #include #include #include using namespace std; int N, M; double M_tmp; int c[10001], p[10001], result[10001]; int main() { while(1) { memset(result, 0, sizeof(result)); cin >> N >> M_tmp; if(N==0) break; ..
- Total
- Today
- Yesterday
- 스택
- dp
- 빌림
- 프로그래머스
- 딕셔너리
- 파이썬
- 10816
- 1759
- 백트래킹
- 11051
- 조합
- 큐
- 1358
- 2805
- 10845
- 수학
- 싸피
- 삼성청년소프트웨어아카데미
- 백준
- 10971
- 브루트포스
- 1715
- 1182
- 10815
- 17478
- 러스트
- 자료구조
- 덱
- heapq
- 1764
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |