목록PS (161)
정화 코딩

https://www.acmicpc.net/problem/1806 #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, s; cin >> n >> s; vector a(n); for (int i = 0; i > a[i]; int si = 0; int ei = 1; int sumt = a[0]; int ans = 200000; int cnt = 1; while (ei 보자마자 투 포인터로 풀어야겠다고 생각했다. 그래서 현재까지의 합이 s보다 작으면 뒤로 한칸 옮겨 하나 더 더하고, 현재까지의..

https://www.acmicpc.net/problem/1238 #include #include using namespace std;int n, m, x;vector> g;int MAX = 1000000000;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> n >> m >> x; g = vector>(n + 1, vector(n + 1, MAX)); for (int i = 0; i > a >> b >> t; g[a][b] = t; } for (int k = 1; k 처음에는 다익스트라로 하려고 했는데, 어차피 사람당 갔다 왔다 이렇게 2번 해야 해서 총 2*n번..

https://www.acmicpc.net/problem/17626 #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin >> n; vector dp(n + 1, 100); dp[0] = 0; dp[1] = 1; for (int i = 1; i "최소" 개수의 제곱수 합으로 표현해야 한다는 점에서 dp가 떠올랐다. 0부터 n까지 배열로 만들고 제곱수를 더해가며 dp 배열을 채웠다. (AC)

https://www.acmicpc.net/problem/9555 #include #include using namespace std;int dx[] = {-1, 0, 1, -1, 1, -1, 0, 1};int dy[] = {1, 1, 1, 0, 0, -1, -1, -1};int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t; cin >> t; while (t--) { int n, m; cin >> n >> m; bool chk[101] = {}; vector> g(n, vector(m)); for (int i = 0; i > g[i..

https://www.acmicpc.net/problem/16928 #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int move[111]; for (int i = 0; i > n >> m; for (int i = 0; i > a >> b; move[a] = b; } bool vst[111] = {}; vst[0] = true; queue> q; // q.emplace(1, 0); vst[1] = true; while (1) { int pos = q.front().fi..

https://www.acmicpc.net/problem/18115 #include #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin >> n; vector ac(n); for (int i = 0; i > ac[i]; deque dq; for (int i = n - 1; i >= 0; i--) { if (ac[i] == 1) { dq.push_front(n - i); } else if (ac[i] == 2) { int tmp = dq.f..

https://www.acmicpc.net/problem/14500 #include #include using namespace std;int dx[][3] = { {1, 1, 1}, {0, 0, 0}, {1, 0, -1}, {0, 0, 1}, {1, 0, 0}, {0, 0, 1}, {1, 0, 0}, {0, 1, 1}, {1, 1, 0}, {0, 1, 1}, {1, 1, 0}, {0, 1, 0}, {0, -1, 0}, {-1, 0, -1}, {-1, 0, -1}, {-1, 1, 1}, {-1, 1, 1}, {1, 0, 0}, {-1, 0, 0}};int dy[][3] = { {0, 0, 0}, {1, 1, 1}, {0, 1, 0}, {-1, -1,..

https://www.acmicpc.net/problem/1622 #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); string s1, s2; while (getline(cin, s1)) { getline(cin, s2); int cnt1[26] = {}; int cnt2[26] = {}; for (char c: s1) cnt1[c - 'a']++; for (char c: s2) cnt2[c - 'a']++; for (int i = 0; i 정렬 태그에 속았는데;; 결국 중요한 건 ..