[๋ฐฑ์ค€/C++] 4889๋ฒˆ ์•ˆ์ •์ ์ธ ๋ฌธ์ž์—ด

2022. 10. 27. 17:10ยทPS/C++
728x90

๋ฐฑ์ค€

 


๐Ÿค”๋ฌธ์ œ ์ดํ•ด

๊ด„ํ˜ธ์˜ ์ง์„ ๋งž์ถ”๊ธฐ ์œ„ํ•ด ์ตœ์†Œํ•œ์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ด„ํ˜ธ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. 


๐Ÿ”ฅํ’€์ด๐Ÿ”ฅ

์ง์ด ๋งž๋Š” ๊ด„ํ˜ธ๋Š” stack์„ ์ด์šฉํ•ด ์—ฌ๋Š” ๊ด„ํ˜ธ๋ฉด ๋„ฃ๊ณ  ๋‹ซ๋Š” ๊ด„ํ˜ธ๋ฉด stack์˜ top์ด ์—ฌ๋Š” ๊ด„ํ˜ธ๋ฉด pop์„ ํ•ด์ฃผ๊ณ , ๋‹ซ๋Š” ๊ด„ํ˜ธ๋ฉด ๊ทธ๋ƒฅ pushํ•ด์ฃผ๋Š” ์‹์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์ฃผ์—ˆ๋‹ค.

 

๋ฐ”๋กœ ์ง์„ ์ง€์–ด์ฃผ๋‚˜ ๋‚˜์ค‘์— ์ง์„ ์ง€์–ด์ฃผ๋‚˜ ๋ฐ”๊พธ๋Š” ๊ด„ํ˜ธ์˜ ๊ฐœ์ˆ˜๋Š” ๋ณ€ํ•˜์ง€ ์•Š๋Š”๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ์•ž์„œ ๋“  ์˜ˆ์‹œ }{{{์˜ ๊ฒฝ์šฐ ์ฒซ๋ฒˆ์งธ์™€ ๋‘๋ฒˆ์งธ, ๋„ค๋ฒˆ์งธ๋ฅผ ๋ฐ”๊ฟ” {}{}์„ ๋งŒ๋“œ๋Š” ๊ฒƒ๊ณผ

์ฒซ๋ฒˆ์งธ ์„ธ๋ฒˆ์งธ ๋„ค๋ฒˆ์งธ๋ฅผ ๋ฐ”๊ฟ” {{}}์„ ๋งŒ๋“œ๋Š” ๊ฒฝ์šฐ์—์„œ ๋ฐ”๊พธ๋Š” ๊ด„ํ˜ธ์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋™์ผํ•จ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

 

๋”ฐ๋ผ์„œ ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•ด ์ฒ˜์Œ ๊ด„ํ˜ธ๋Š” ๋ฌด์กฐ๊ฑด ์—ฌ๋Š” ๊ด„ํ˜ธ๋กœ ๋งŒ๋“ค์–ด์ฃผ๊ณ , ๋‹ค์Œ ๊ด„ํ˜ธ๋Š” ๋‹ซ๋Š” ๊ด„ํ˜ธ๋กœ ๋งŒ๋“ค์–ด ์ฃผ๋ฉด์„œ ๋ฌธ์ž 2๊ฐœ์”ฉ ์ฒ˜๋ฆฌํ•ด์ฃผ์—ˆ๋‹ค. 


#include <iostream>
#include <stack>
#include <vector>

using namespace std;

string s;

int main() {
    cin.tie(nullptr);
    cout.tie(nullptr);
    ios::sync_with_stdio(false);

    int idx = 1;
    while (true) {
        cin >> s;
        stack<char> st;
        for (int i = 0; i < s.size(); i++) {
            if (s[i] == '{') {
                st.push('{');
            } else if (s[i] == '}') {
                if (!st.empty() && st.top() == '{') {
                    st.pop();
                } else {
                    st.push('}');
                }
            } else {
                return 0;
            }
        }
        vector<char> v;
        while (!st.empty()) {
            v.push_back(st.top());
            st.pop();
        }
        int ans = 0;
        for (int i = v.size() - 1; i >= 0; i--) {
            if (v[i] == '}') {
                ans++;
                i--;
                if (v[i] == '{')
                    ans++;
            } else if (v[i] == '{') {
                i--;
                if (v[i] == '{')
                    ans++;
            }
        }
        cout << idx << ". " << ans << "\n";
        idx++;
    }

}
728x90

'PS > C++' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[๋ฐฑ์ค€/C++] 20040๋ฒˆ ์‚ฌ์ดํด ๊ฒŒ์ž„  (0) 2022.11.03
[๋ฐฑ์ค€/C++] 17404๋ฒˆ RGB๊ฑฐ๋ฆฌ 2  (0) 2022.11.02
[๋ฐฑ์ค€/C++] 21610๋ฒˆ ๋งˆ๋ฒ•์‚ฌ ์ƒ์–ด์™€ ๋น„๋ฐ”๋ผ๊ธฐ  (0) 2022.10.06
[๋ฐฑ์ค€/C++] 24524๋ฒˆ ์•„๋ฆ„๋‹ค์šด ๋ฌธ์ž์—ด  (0) 2022.10.05
[๋ฐฑ์ค€/C++] 9663๋ฒˆ N-Queen  (0) 2022.08.16
'PS/C++' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [๋ฐฑ์ค€/C++] 20040๋ฒˆ ์‚ฌ์ดํด ๊ฒŒ์ž„
  • [๋ฐฑ์ค€/C++] 17404๋ฒˆ RGB๊ฑฐ๋ฆฌ 2
  • [๋ฐฑ์ค€/C++] 21610๋ฒˆ ๋งˆ๋ฒ•์‚ฌ ์ƒ์–ด์™€ ๋น„๋ฐ”๋ผ๊ธฐ
  • [๋ฐฑ์ค€/C++] 24524๋ฒˆ ์•„๋ฆ„๋‹ค์šด ๋ฌธ์ž์—ด
yulee_to
yulee_to
  • yulee_to
    yulee
    yulee_to
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ์ „์ฒด ๊ธ€ (121)
      • CS (2)
        • OS (0)
        • DB (0)
        • Network (2)
      • Develop (21)
        • Spring (9)
        • Java (12)
        • Python (0)
        • Algorithm (0)
        • ๊ธฐํƒ€ (0)
      • PS (39)
        • C++ (39)
        • Java (0)
      • TIL (14)
      • Book (39)
        • ์ž๋ฐ”์˜ ์‹  (32)
        • ์Šคํ”„๋ง ์ž…๋ฌธ์„ ์œ„ํ•œ ์ž๋ฐ” ๊ฐ์ฒด ์ง€ํ–ฅ์˜ ์›๋ฆฌ์™€ ์ดํ•ด (7)
      • ETC (4)
        • Blog (3)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ๋ถ€ํŠธ์บ ํ”„ํ›„๊ธฐ
    ๊ฐ์ฒด์ง€ํ–ฅ
    C++
    boj
    ์—์Šค๋„ท์‹œ์Šคํ…œ
    EC2
    ๋ฐฑ์ค€
    ๋ฉ€ํ‹ฐ์บ ํผ์Šคit๋ถ€ํŠธ์บ ํ”„
    TiL
    ์ž๋ฐ”
    ํด๋ผ์šฐ๋“œ ํ™œ์šฉ ๋„คํŠธ์›Œํฌ ์—”์ง€๋‹ˆ์–ด ๋ถ€ํŠธ์บ ํ”„
    ์ž๋ฐ”์˜ ์‹ 
    ์•Œ๊ณ ๋ฆฌ์ฆ˜
    ์—์Šค๋„ท์‹œ์Šคํ…œ ๋ถ€ํŠธ์บ ํ”„
    GodOfJava
    1์ผ1๋ฐฑ์ค€
    Java
    ์Šคํ„ฐ๋””
    ์Šคํ”„๋ง ์ž…๋ฌธ
    ๋ฌธ์ œํ’€์ด
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
yulee_to
[๋ฐฑ์ค€/C++] 4889๋ฒˆ ์•ˆ์ •์ ์ธ ๋ฌธ์ž์—ด
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”