반응형

Programming/Baekjoon 117

[백준] 7576 토마토 c++

#include #include #include #include #include #include #include #include #include using namespace std; int n, m; int map[1001][1001];//map bool visited[1001][1001];//방문여부배열 vectorstart;//익은 토마토 저장하는 vector int answer = 0;//정답저장할 변수 int dx[4] = { 1,0,-1,0 };//상하좌우탐색을 위한 배열 int dy[4] = { 0,1,0,-1 }; bool check = true; void bfs() { queueq; for (int i = 0; i < start.size(); i++)//익은 토마토들의 좌표 queue에 p..

백준 11403 경로찾기 [c++]

#include #include #include #include #include #include #include #include using namespace std; int n; int temp; vectorv[101]; bool visited[101]; void dfs(int start) { stacks; s.push(start); while (!s.empty()) { int x = s.top(); s.pop(); for (int i = 0; i < v[x].size(); i++) { int xx = v[x][i]; if (xx == 0)continue;//xx의 값이 1인경우가 연결된 정점 if (visited[i])continue; s.push(i);//연결된 인덱스 push 및 방문 표시 visi..

백준 14500 테트로미노 c++

#include #include #include #include #include #include #include #include using namespace std; int n, m; int map[501][501]; bool visited[501][501]; int result = 0; int dx[4] = { -1,0,0,1 };//상하좌우탐색을 위한 배열 int dy[4] = { 0,-1,1,0 }; int func2(int x, int y)//func 함수들은 ㅗ,ㅏ,ㅓ,ㅜ 모양의 테트로미노의 값을 확인 { return map[x][y] + map[x + 1][y] + map[x + 2][y] + map[x + 1][y - 1]; } int func3(int x, int y) { return ma..

백준3048 개미 c++

#include #include #include #include #include #include #include using namespace std; int n1,n2,t; string str1, str2; string temp; vectorv; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> n1 >> n2;//각그룹의개미수 cin >> str1;//첫번째그룹 cin >> str2;//두번째그룹 cin >> t;//초 for (int i = str1.size()-1;i>=0;i--)//첫번째그룹 역순으로 temp에 저장 temp += str1[i]; for (int i = 0; i < temp.size(); ..

백준 9996 한국이 그리울 땐 서버에 접속하지 [c++]

#define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); string pt; string temp; vectorv; int n; cin >> n;//문자열개수입력 cin >> pt;//문자열패턴입력 for (int i = 0; i > temp;//확인할 문자열 입력 stacks; for (int j = pt.size() - 1; j >= 0; j--)//패턴을 stack에 역순으로 저장, stack의 구조상 꺼낼때 패턴의 앞부터 ..

백준 3085 사탕게임 [c++] [완전탐색]

#include #include #include #include #include #include using namespace std; int n;//보드의 크기 char map[51][51];//보드로 사용될 배열 int result = 0;//사탕의 최대 개수 int cnt = 1;//사탕을 교환했을때의 개수를 저장할 변수 void hfunc(int a, int b)//세로끼리 교환후 사탕 개수를 확인하는 배열 { swap(map[a][b], map[a + 1][b]);//swap을 사용하여 값 교환, a a+1 for (int i = 0; i < n; i++)//행의 최대사탕 개수를 확인하는 반복문 { cnt = 1; for (int j = 0; j < n; j++) { if (j + 1 < n) {..

백준 2644 c++ 촌수계산

#include #include #include #include #include #include using namespace std; int n; pairtarget; vectorrel[1001]; bool visited[1001][1001]; int m; int t1, t2; int bfs(int start) { queueq; q.push({start,0}); //start는 탐색을 시작할 위치이며, 0은 탐색이 진행될때마다 증가되는 촌수이다. while (!q.empty()) { int qx = q.front().first; //현재위치 int qcnt = q.front().second; //촌수 q.pop(); if (qx == target.second) //촌수를 계산해야하는사람에 도달한 경우 r..

반응형