어렵지 않았다. 다만 어떻게 풀지? 가 관건이다. https://www.acmicpc.net/problem/14226 문제 분석부터 해보자 최솟값을 가지는데 수행해야 하는 작업의 가중치가 같다? BFS 가자 #include using namespace std; //1개는 이미 입력 int S; int visited[3000][3000]; int main(){ cin >> S; //현재 상태, 클립보드에 저장된 개수 queue q; q.push({1,0}); visited[1][0] = 1; while(!q.empty()){ auto cur = q.front(); q.pop(); int now = cur.first; int clip = cur.second; //체크 if(now == S){ cout