[PCCE 기출문제] 9번 / 지폐 접기

magicdrill·2024년 12월 30일
0

[PCCE 기출문제] 9번 / 지폐 접기

#include <string>
#include <vector>
#include <iostream>

using namespace std;

int solution(vector<int> wallet, vector<int> bill) {
    int answer = 0;
    int i, j, temp_max, temp_min;
    
    while(1){
        //bill을 그대로 또는 90도 돌려서 wallet에 넣을 수 있다면?
        //bill의 큰 값이 wallet의 큰 값보다 작고, bill의 작은 값이 wallet의 작은 값보다 작다면?
        if((max(bill[0], bill[1]) <= max(wallet[0], wallet[1])) && (min(bill[0], bill[1]) <= min(wallet[0], wallet[1]))){
            cout << "들어갈 수 있음!\n";
            break;
        }
        
        //아직은 들어가지 못하고 접어야 한다면?
        if(bill[0] > bill[1]){
            bill[0] = bill[0] / 2;
            cout << "bill[0]을 접음 : " << bill[0] << " " << bill[1] << "\n";
            answer++;
        }
        else{
            bill[1] = bill[1] / 2;
            cout << "bill[1]을 접음 : " << bill[0] << " " << bill[1] << "\n";
            answer++;
        }
    }
    
    return answer;
}

0개의 댓글