백준
[골4] 1922 - 네트워크 연결
#include #include #include using namespace std; #define MAX 100001 struct sEdge { int val, a, b; }; vector graph; int parent[MAX]; int res = 0; int Find(int x) { return (parent[x] == x) ? x : parent[x] = Find(parent[x]); } void Union(int x, int y) { x = Find(x), y = Find(y); if (x != y) parent[y] = x; } bool Cmp(sEdge edge1, sEdge edge2) { return (edge1.val < edge2.val); } int main() { ios_base:..
[골5] 2493 - 탑
#include #include #define y first #define x second using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL), cout.tie(NULL); int n; cin >> n; stack s; for (int i = 1; i > h; while (!s.empty()) { if (s.top().x > h) { cout
[골4] 15683 - 감시
https://github.com/encrypted-def/BOJ/blob/master/15683.cpp 아래는 내 코드다 cctv가 1일 때에 대비해서 풀지 못했다. #include #include #include using namespace std; using IntPair = pair; #define MAX_SIZE 100 #define y first #define x second int map[MAX_SIZE][MAX_SIZE]{ 0 }; int tmpMap[MAX_SIZE][MAX_SIZE]{ 0 }; int h, w; // CCTV 위치 저장용도 vector vC; // 다음 위치 시계 방향 IntPair pos[] { { 1, 0 }, // 북 { 0, 1 }, // 서 {-1, 0 }, /..
[골5] 9663 - N-Queen
#include using namespace std; int n, answer = 0; int vis[15]{ 0 }; // 유망한지 체크 bool Check(int cnt) { for (int i = 0; i < cnt; i++) { auto vis1 = vis[cnt], vis2 = vis[i]; if (vis1 == vis2 || cnt - i == abs(vis1 - vis2)) return 0; } return 1; } void BackTracking(int cnt) { if (cnt == n) { answer++; return; } for (int i = 0; i < n; i++) { vis[cnt] = i; if (Check(cnt)) BackTracking(cnt + 1); } } int ..
[골5] 14503 - 로봇 청소기
수정된 코드 #include #define MAX 51 #define y first #define x second using namespace std; struct Robot { int y, x, d; Robot() = default; Robot(int y, int x, int d = 0) : y(y), x(x), d(d) { } } robot; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL), cout.tie(NULL); int h, w; cin >> h >> w; cin >> robot.y >> robot.x >> robot.d; auto& y = robot.y, & x = robot.x, & d = robot.d; if (d == 1) d..
[실3] 1966 - 프린터 큐
#include #include #include #include using namespace std; #define y front().first #define x front().second int main() { ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0); int tc; cin >> tc; for (int i = 0; i > t >> f; queue q; priority_queue pq; for (int j = 0; j > val; q.push({ j,val }); pq.push(val); } ..
[실3] 1021 - 회전하는 큐
#include #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0); int s, n, cnt = 0; cin >> s >> n; deque dq; for (int i = 1; i > num; for (int i = 0; i < s; i++) { if (dq[i] == num) { idx = i; break; } } for (int i = 0; i < dq.size(); i++) { if (dq.front() == num) { dq.pop_front(); break; } if (idx < dq.size() / 2 + 1) { dq.push_back(dq..
[골5] 2023 - 신기한 소수
#include #include #include #include using namespace std; int n = 0; bool Prime(int num) { for (int i = 2; i * i
[골2] 10800 - 컬러볼
#include #include #include #include using namespace std; struct sColorBall { int n, color, size; sColorBall() = default; sColorBall(int n, int color, int size):n(n),color(color),size(size) { } }; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin >> n; vector vecBall(n); for (int i = 0; i > vecBall[i].color >> vecBall[i].size; } sort(vecB..
[실1] 1932 - 정수 삼각형
#include #include using namespace std; int arr[501][501]{ 0 }; int dp[501][501]{ 0 }; int main() { int n; cin >> n; for (int i = 1; i arr[i][j]; dp[1][1] = arr[1][1]; for (int i = 2; i