[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.2 - ์Šคํ‚ฌํŠธ๋ฆฌ(C++)

2023. 6. 2. 11:16ยท๐Ÿ–ฅ๏ธ Study Note/Coding Test

https://school.programmers.co.kr/learn/courses/30/lessons/49993?language=cpp 

๋‚ด ํ’€์ด

์Šคํ‚ฌ ์ˆœ์„œ S์— ํฌํ•จ๋œ ์Šคํ‚ฌ์„ Queue์— ๋„ฃ์–ด์„œ ์ˆœ์„œ๋Œ€๋กœ ์žˆ๋Š”์ง€ ๋น„๊ตํ–ˆ๋‹ค. 

#include <string>
#include <vector>
#include <queue>
#include <algorithm>
#include <iostream>

using namespace std;

int solution(string skill, vector<string> skill_trees) {
    int answer = 0;
    for(const auto& st : skill_trees)
    {
        queue<int> q;
        
        // skill์— ์žˆ๋Š” ์Šคํ‚ฌ๋“ค์„ ๋ชจ๋‘ q์— ๋„ฃ๊ธฐ
        for(const auto& s : st)
        {
            auto iter = find(skill.begin(), skill.end(), s);
            if(iter != skill.end())
            {       
                q.push(*iter);
            }
        }
        
        
        // q์— ์žˆ๋Š” ์Šคํ‚ฌ๋“ค์ด skill ์ˆœ์„œ๋Œ€๋กœ ์žˆ๋Š”์ง€ ํ™•์ธ
        int skill_level = 0;
        while(!q.empty())
        {
            char s = q.front();
            
            if(skill[skill_level] == s)
            {
                ++skill_level;
                q.pop();
            }
            else
                break;
        }
        
        // q๊ฐ€ ๋น„์–ด์žˆ๋‹ค๋ฉด skill ์ˆœ์„œ๋Œ€๋กœ ์žˆ๋Š” ๊ฒƒ์ด๋ฏ€๋กœ ์ •๋‹ต ์ถ”๊ฐ€
        if(q.empty())
            ++answer;
    }
    return answer;
}

 

 

 

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'๐Ÿ–ฅ๏ธ Study Note > Coding Test' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.3 - ์ด์ค‘์šฐ์„ ์ˆœ์œ„ํ(C++)  (0) 2023.06.04
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.3 - ์ •์ˆ˜ ์‚ผ๊ฐํ˜•(C++)  (0) 2023.06.03
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.3 - ์•ผ๊ทผ ์ง€์ˆ˜(C++)  (0) 2023.06.01
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.3 - ์ตœ๊ณ ์˜ ์ง‘ํ•ฉ(C++)  (0) 2023.05.31
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.2 - ๊ทค ๊ณ ๋ฅด๊ธฐ(C++)  (0) 2023.05.30
'๐Ÿ–ฅ๏ธ Study Note/Coding Test' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.3 - ์ด์ค‘์šฐ์„ ์ˆœ์œ„ํ(C++)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.3 - ์ •์ˆ˜ ์‚ผ๊ฐํ˜•(C++)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.3 - ์•ผ๊ทผ ์ง€์ˆ˜(C++)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.3 - ์ตœ๊ณ ์˜ ์ง‘ํ•ฉ(C++)
Beankong_
Beankong_
์ฃผ๋‹ˆ์–ด ํด๋ผ์ด์–ธํŠธ ํ”„๋กœ๊ทธ๋ž˜๋จธ ๊ณต๋ถ€ ๊ธฐ๋ก
  • Beankong_
    Beankong's Devlog
    Beankong_
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ์ „์ฒด ๊ธ€ (146)
      • โ›… Daily (0)
      • ๐Ÿ–ฅ๏ธ Study Note (2)
        • C++ (1)
        • Unreal Engine (5)
        • Coding Test (123)
        • Design Patteren (5)
        • VCS (Git..) (1)
        • Server (1)
      • ๐Ÿงญ Devlog (8)
        • ์˜ค๋‹ต๋…ธํŠธ (4)
        • UE5 GameLift Server Test Project (1)
        • TIL (3)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ๋งํฌ

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

    • ์ธ๊ธฐ ๊ธ€

    • ํƒœ๊ทธ

      ํ—ฌํ…Œ์ด์ปค
      ํ”„๋ฃŒ๊ทธ๋ž˜๋จธ์Šค
      ์ตœ๋‹จ ๊ฑฐ๋ฆฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜
      UnrealEngine
      ๊ทธ๋ž˜ํ”„ ์ˆœํšŒ
      ์•Œ๊ณ ๋ฆฌ์ฆ˜
      ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
      ๊ฒŒ์ž„ํ”„๋กœ๊ทธ๋ž˜๋ฐ
      ๊ทธ๋ฆฌ๋””(greedy)
      ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ
      propertyaccess
      UnrealEngine5
      ๊ฒŒ์ž„ ๋ชจ์ž‘
      cpp
      ๊ฒŒ์ž„ ๊ฐœ๋ฐœ
      OnlineSubsystem
      unrealengine module
      ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
      unrealengine build system
      programmers
    • ์ตœ๊ทผ ๋Œ“๊ธ€

    • ์ตœ๊ทผ ๊ธ€

    • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
    Beankong_
    [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] level.2 - ์Šคํ‚ฌํŠธ๋ฆฌ(C++)
    ์ƒ๋‹จ์œผ๋กœ

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