본문 바로가기

이론/코딩테스트71

[백준] 1817번 짐 챙기는 숌 (스택) -문제 -코드 #include #include using namespace std; int main() { int n, m, k, g=0, cnt=1; scanf("%d %d", &n, &m); stack s; for (int i = 0; i < n; i++) { scanf("%d",&k); s.push(k); } while (!s.empty()) { int tmp = s.top(); s.pop(); if (g + tmp 2022. 8. 19.
[백준] 1417번 국회의원 선거 (우선순위 큐) -문제 -코드 #include #include using namespace std; int main() { int n, k, dasom=0, cnt=0; scanf("%d", &n); priority_queue pq; for (int i = 0; i < n; i++) { scanf("%d",&k); if (i == 0) dasom = k; else pq.push(k); } while (!pq.empty()) { int tmp = pq.top(); pq.pop(); if (dasom 2022. 8. 19.
[백준] 1343번 폴리오미노 (그리디 알고리즘) -문제 -코드 #include #include using namespace std; int main() { string s, r; int cnt=0; cin >> s; for (int i = 0; i < s.size(); i++) { if (s[i] == 'X') cnt++; else if (s[i] == '.') { r += "."; if (cnt % 2 != 0) break; cnt = 0; } if (cnt == 2 && s[i+1] != 'X') { r += "BB"; cnt = 0; } else if (cnt == 4) { r += "AAAA"; cnt = 0; } } if (cnt % 2 != 0) cout 2022. 8. 19.
[백준] 1339번 단어수학 (그리디 알고리즘) -문제 -코드 #include #include #include #include #include using namespace std; int main() { int n = 0, sum = 0; cin >> n; vector a(26); string s; for (int i = 0; i > s; for (int i = 0; i < s.size(); i++) { a[s[i] - 'A'] += pow(10, s.size() - i - 1); } } sort(a.rbegin(), a.rend()); for (int i = 0; i < a.size(); i++) { sum += a[i] * (9 - i); } printf("%d", sum); return 0; } 2022. 8. 18.