도키도키 간식드리미 - 12789

2025. 1. 12. 17:57PS/백준

https://www.acmicpc.net/problem/12789

배운 점

원소에 접근하려면 비어있는지 확인을 무조건 해야하고, 초깃값 설정을 잘해야함

#include <iostream>
#include <vector>

int main()
{
    int N;
    int target = 1;
    std::cin >> N;
    std::vector<int> stack;
    for (int i = 0; i < N; i++)
    {
        int temp;
        std::cin >> temp;
        if (temp != target)
        {
            stack.push_back(temp);
        }
        else
        {
            target++;

            while (!stack.empty() && stack.back() == target)
            {
                stack.pop_back();
                target++;
            }
        }
    }
    int size = stack.size();

    for (int i = 0; i < size; i++)
    {
        int temp = stack.back();
        if (temp != target)
        {
            std::cout << "Sad" << "\n";
            break;
        }
        else
        {
            target++;
        }

        stack.pop_back();
    }

    if (stack.size() == 0)
    {
        std::cout << "Nice" << "\n";
    }

    return 0;
}

'PS > 백준' 카테고리의 다른 글

222-풀링 - 17829  (0) 2025.02.12
마인크래프트 - 18111  (0) 2025.02.12
[백준] 14567 - 선수과목  (0) 2024.08.16
[백준] 5430 - AC  (0) 2024.08.11
[백준] 11663 - 선분 위의 점  (0) 2024.07.04