C#

백준 C# 2164 문제 풀이

psb08 2024. 12. 16. 09:01
728x90

문제 링크 : https://www.acmicpc.net/problem/2164

목차

1. 설명

 

2. 내 코드

 

3. 문제 풀이 해석 내용

 

4. 실행 결과

 

설명

백준 실버 4 문제 입니다.

문제명 : 카드 2

 

내 코드

int N = int.Parse(Console.ReadLine());
Queue<int> queue = new Queue<int>();

// 카드 초기화
for (int i = 1; i <= N; i++)
{
    queue.Enqueue(i);
}

// 카드 처리
while (queue.Count > 1)
{
    // 가장 위의 카드 버리기
    queue.Dequeue();
    // 그 다음 카드 가장 아래로 옮기기
    queue.Enqueue(queue.Dequeue());
}

// 마지막 남은 카드 출력
Console.WriteLine(queue.Dequeue());

 

문제 풀이 해석 내용

 

입력 처리

int N = int.Parse(Console.ReadLine());

 

 

큐 초기화

Queue<int> queue = new Queue<int>();

for (int i = 1; i <= N; i++)
{
    queue.Enqueue(i);
}

 

 

카드 처리

while (queue.Count > 1)
{
    queue.Dequeue(); // 가장 위의 카드 버리기
    queue.Enqueue(queue.Dequeue()); // 그 다음 카드 가장 아래로 옮기기
}

 

 

결과 출력

Console.WriteLine(queue.Dequeue());

 

 

실행 결과

실행 결과

 

728x90

'C#' 카테고리의 다른 글

백준 C# 10773 문제 풀이  (0) 2024.12.18
백준 C# 4949 문제 풀이  (0) 2024.12.17
백준 C# 7568 문제 풀이  (0) 2024.12.14
백준 C# 1436 문제 풀이  (0) 2024.12.13
백준 C# 1676 문제 풀이  (0) 2024.12.12