#include #include #include #include #include using namespace std; vector v; int visit[1001]; void dfs(int idx) { visit[idx] = 1; printf("%d ", idx); sort(v[idx].begin(), v[idx].end()); for (int i = 0; i < v[idx].size(); i++) { if (visit[v[idx][i]] == 0) dfs(v[idx][i]); } } int main() { int n, m, start; queue q; scanf("%d %d %d", &n, &m, &start); v.resize(n + 1); int x, y; for (int i = 0; i < m; ..
#include #include using namespace std; vector v; int visit[1001]; void dfs(int idx) { visit[idx] = 1; for (int i = 0; i < v[idx].size(); i++) { if (visit[v[idx][i]] == 0) dfs(v[idx][i]); } } int main() { int n, m; scanf("%d %d", &n, &m); v.resize(n + 1); int x, y; for (int i = 0; i < m; i++) { scanf("%d %d", &x, &y); v[x].push_back(y); v[y].push_back(x); } int count = 0; for (int i = 1; i
#include int coin[10]; int main(void) { int i, n, k, div; int result = 0; scanf("%d %d", &n, &k); for (i = 0; i < n; i++) scanf("%d", &coin[i]); for (i = 1; i < n; i++) { div = (k % coin[i]) / coin[i - 1]; result += div; k -= coin[i - 1] * div; } result += k / coin[n - 1]; printf("%d", result); return 0; } 풀이: 15분 코딩: 6분 개선: 17분 인접한 동전이 배수관계임에 힌트를 얻었다. 크기가 작은 동전들로 큰 동전을 대체할 수 있으며 큰 동전으로 표현할 수 없다..