목록Algorithm/boj (60)
Mini
https://www.acmicpc.net/problem/2468 2468번: 안전 영역 재난방재청에서는 많은 비가 내리는 장마철에 대비해서 다음과 같은 일을 계획하고 있다. 먼저 어떤 지역의 높이 정보를 파악한다. 그 다음에 그 지역에 많은 비가 내렸을 때 물에 잠기지 않는 www.acmicpc.net * 잘못접근 : a_copy 배열에 안전지역을 -1로 플래그.....복잡 * 해결 : 높이를 인자로 추가 높이 초과일때만 bfs탐색! #include using namespace std; const int max_n = 104; int n, ny, nx, ret, ans, a[max_n][max_n], visited[max_n][max_n]; int dx[] = { -1,0,1,0 }; int dy[] ..
https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 1. tc문제는 초기화 visit처리만 담당 #include using namespace std; const int max_n = 51; int t, n, m, k, ny,nx,ret, a[max_n][max_n], visited[max_n][max_n]; int dx[] = {-1,0,1,0}; int dy[] = {0,-1,0,1}; /* * dfs * 1.방문처리 * 2.for(dy,dx) * 3.방문가..
https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 최단거리는 bfs! visit배열의 값 == 해당좌표까지 오는 최단거리! #include using namespace std; #define max_n 104 int n, m, x,y, visited[max_n][max_n], a[max_n][max_n]; int dx[] = {1,0,-1,0}; int dy[] = {0,1,0,-1}; int main() { scanf("%d %d", &n, &m); for (int i = 0..
https://www.acmicpc.net/problem/2559 2559번: 수열 첫째 줄에는 두 개의 정수 N과 K가 한 개의 공백을 사이에 두고 순서대로 주어진다. 첫 번째 정수 N은 온도를 측정한 전체 날짜의 수이다. N은 2 이상 100,000 이하이다. 두 번째 정수 K는 합을 구하기 www.acmicpc.net #include using namespace std; int n, k,temp;//숫자, 연속일 int psum[100001]; int ret = -10000004;//최악의경우 : -100*10만번(n) /* * (-) 이중포문 : 100,000 * 100,000 ->시간초과 * * 해결 : * 구간쿼리는 psum!!!!!!!!! * ex) * 배열 : 1 2 3 4 5 * psum..
https://www.acmicpc.net/problem/1159 1159번: 농구 경기 상근이는 농구의 세계에서 점차 영향력을 넓혀가고 있다. 처음에 그는 농구 경기를 좋아하는 사람이었다. 농구에 대한 열정은 그를 막을 수 없었고, 결국 상근이는 농구장을 청소하는 일을 시작 www.acmicpc.net #include using namespace std; int n; int cnt[26]; int main() { cin >> n; for (int i = 0; i > s; cnt[s[0] - 97]++;//a는97 A는65 } bool z=false; for(int i=0;i=5) { cout
https://www.acmicpc.net/problem/3986 3986번: 좋은 단어 이번 계절학기에 심리학 개론을 수강 중인 평석이는 오늘 자정까지 보고서를 제출해야 한다. 보고서 작성이 너무 지루했던 평석이는 노트북에 엎드려서 꾸벅꾸벅 졸다가 제출 마감 1시간 전에 www.acmicpc.net * 행동영역 : 문제가 안풀리면 뒤집어서 그려보아라. ex) ABBA -> A B B A 위그림에서 BB가 닿으면 폭발시키면 어떨까?, 모두폭팔해서 원소가없다면 좋은단어이다. #include using namespace std; int answer; int main() { int n;//단어갯수 cin >> n; for (int i = 0; i 자..
https://www.acmicpc.net/problem/10808 10808번: 알파벳 개수 단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다. www.acmicpc.net #include using namespace std; string s; int a[26]; int main() { cin >> s;//입력 for (int i = 0; i < s.length(); ++i) { if (s[i] == 'a') a[0]++; else if (s[i] == 'b') a[1]++; else if (s[i] == 'c') a[2]++; else if (s[i] == 'd') a[3]++; else if (s[i] == 'e') a[4]++; else if (s[i] =..
https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net #include #include #include #include using namespace std; queue q; int main() { int n, k;//1~n개, k개지나면아웃 cin >> n >> k; for (int i = 1; i