본문 바로가기
  • GDG on campus Ewha Tech Blog
3-2기 스터디/알고리즘

[알고리즘 스터디] 3주차 활동 기록

by akxmcse 2022. 4. 10.
GDCS 알고리즘 스터디 3주차(4/10) 활동 기록입니다.
3주차에는 큐를 이용한 간단한 문제인 카드2에 대한 풀이를 공유하였습니다.

 

문제 소개

 

문제 접근

카드 뭉치의 앞과 뒤만 접근한다는 점에서 큐를 떠올림

 

문제 풀이 로직

  1. 1번 카드가 맨 앞, N번 카드가 맨 뒤가 되는 큐를 하나 만든다.
  2. 최상단 카드는 그냥 pop하고 그 다음 최상단 카드는 pop하고 push한다.
  3. 큐의 size가 1이 될 때까지 2를 반복한다.
  4. 마지막 큐의 원소를 출력한다.

 

문제 풀이

#include <iostream>
#include <queue>

using namespace std;

int main() {
	queue<int> cards;
	int N;
  	int topCard;

	cin >> N;

	for(int i = 1; i <= N; i++){
		cards.push(i);
	}

	while(cards.size() != 1){
		cards.pop();
		topCard = cards.front();
		cards.push(topCard);
    		cards.pop();
	}
	
	cout << cards.front();

	return 0;
};

 


더 좋은 접근 방법이나 풀이법이 있다면 언제든지 댓글 남겨주세요😊

본 활동 기록은 기록자가 풀이한 문제를 위주로 기술되었으며, 스터디 레포지토리에서 더 많은 문제 풀이를 확인해보실 수 있습니다.

 

댓글