ABOUT ME

์•Œ๊ณ ๋ฆฌ์ฆ˜, ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์šฉ ๋ธ”๋กœ๊ทธ์ž…๋‹ˆ๋‹น~ ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ๋Š” https://velog.io/@ows3090 ์— ์ž‘์„ฑํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

Today
Yesterday
Total
  • [Programmers] Lv2. ํŠœํ”Œ
    SW Test/Programmers 2020. 9. 1. 13:21
    ๋ฐ˜์‘ํ˜•
    • ์ด ๊ธ€์€ C++๋กœ ํ’€์ด๋ฅผ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    ๋ฌธ์ œ

    ์˜ˆ์‹œ


    ํ’€์ด

    #include <string>
    #include <vector>
    #include <algorithm>
    using namespace std;
    /**
    {{1,2,3},{2,1},{1,2,4,3},{2}} ์ด ๋ฌธ์ž์—ด์„ ๊ฐ€์ง€๊ณ 
    ์›์†Œ์˜ ๊ฐฏ์ˆ˜๊ฐ€ ์ ์€ ์ˆœ์„œ๋Œ€๋กœ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ •๋ ฌํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋น„๊ตํ•จ์ˆ˜ ๊ตฌํ˜„
    {2},{2,1},{1,2,3},{1,2,4,3} ์ˆœ์œผ๋กœ ๊ฒฐ๊ณผ ์ถœ๋ ฅ
    **/
    bool cmp(vector<int> a, vector<int> b){
    return a.size()<b.size();
    }
    vector<int> solution(string s) {
    vector<vector<int>> v; // ๋ฌธ์ž์—ด์„ ๊ฐ€์ง€๊ณ  2์ค‘ ๋ฐฐ์—ด ๊ตฌํ˜„
    vector<int> answer;
    bool flag = false; // '{' ๊ด„ํ˜ธ์ดํ›„ ์—ฌ๋ถ€
    vector<int> temp; // ๋ฌธ์ž์—ด์„ ๋ฐฐ์—ด๋กœ ๋งŒ๋“ค ๋•Œ ์“ฐ์ด๋Š” ์ž„์‹œ๋ฐฐ์—ด
    string num = ""; // ์ˆซ์ž๋ฅผ ํ‘œํ˜„ํ•  ๋ฌธ์ž์—ด
    // s์˜ ์ฒ˜์Œ๊ณผ ๋์€ ํ™•์ธํ•  ํ•„์š”์—†๋‹ค.
    for(int i=1;i<s.size()-1;i++){
    if(s[i] == '{'){ // '{' ๊ด„ํ˜ธ๊ฐ€ ๋‚˜์˜ค๋ฉด ์‹œ์ž‘
    flag = true;
    }
    else if(isdigit(s[i])){ // ์ˆซ์ž์ผ ์‹œ num ๋ฌธ์ž์—ด์— ์ถ”๊ฐ€, ์ˆซ์ž๋Š” ๋ฌด์กฐ๊ฑด flag๊ฐ€ true์ผ ๋•Œ๋งŒ ๊ฐ€๋Šฅ
    num+=s[i];
    }
    else if(flag && s[i] == ','){ // ์ˆซ์ž๋ฅผ ์ž„์‹œ๋ฐฐ์—ด์— ๋„ฃ๊ธฐ ์ „ ํ™•์ธ
    temp.push_back(stoi(num)); // ์ž„์‹œ๋ฐฐ์—ด์— ์ˆซ์ž ๋„ฃ๊ธฐ
    num.clear(); // ์ˆซ์ž ์ดˆ๊ธฐํ™”
    }
    else if(s[i]=='}'){ // '}' ๊ด„ํ˜ธ๊ฐ€ ๋‚˜์˜ฌ๊ฒฝ์šฐ ํ•˜๋‚˜์˜ ๋ฐฐ์—ด ์ƒ์„ฑ ์ข…๋ฃŒ, 2์ค‘๋ฐฐ์—ด์— ๋„ฃ๊ธฐ
    temp.push_back(stoi(num));
    v.push_back(temp);
    num.clear();
    temp.clear();
    flag=false;
    }
    }
    sort(v.begin(),v.end(),cmp); // ์ •๋ ฌ
    // ์›์†Œ์˜ ๊ฐฏ์ˆ˜๊ฐ€ ์ ์€ ๋ฐฐ์—ด๋ถ€ํ„ฐ ๊ฒ€์‚ฌ
    for(int i=0;i<v.size();i++){
    for(int j=0;j<v[i].size();j++){
    if(find(answer.begin(),answer.end(),v[i][j])==answer.end()){ // ์ค‘๋ณต ์ œ๊ฑฐ
    answer.push_back(v[i][j]);
    }
    }
    }
    return answer;
    }
    • ์ถ”๊ฐ€๋กœ ๊ถ๊ธˆํ•œ ์ ์ด๋‚˜ ์ˆ˜์ •ํ•  ๋ถ€๋ถ„ ์žˆ์œผ๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š”.
    ๋ฐ˜์‘ํ˜•
Designed by Tistory.