분류 전체보기

    백준 1012 유기농배추 //구역세기는 dfs

    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.방문가..

    백준 2178 미로탐색 //최단거리는 bfs

    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..

    백준 2559 c++

    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..

    백준 1159 농구경기

    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

    백준 3986 좋은단어

    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 자..

    백준 10808 알파벳 개수

    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] =..

    백준 1158 cpp

    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

    백준 1110

    https://www.acmicpc.net/problem/1110 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, www.acmicpc.net #include #include #include using namespace std; int n; int main() { cin >> n; if (n < 10) n = n * 10; int a; a = n; //초기값 int cnt = 0; int temp = -99; while (true) { //int temp; if (temp == a)//초기값과 같으면 사이클출력. { cout