본문 바로가기
프로그래머스코딩테스트연습풀이/C++

[프로그래머스/C++] 날짜 비교하기

by 코코쵸마 2025. 2. 22.

문제

정수 배열 date1과 date2가 주어집니다. 두 배열은 각각 날짜를 나타내며 [year, month, day] 꼴로 주어집니다. 각 배열에서 year는 연도를, month는 월을, day는 날짜를 나타냅니다.

만약 date1이 date2보다 앞서는 날짜라면 1을, 아니면 0을 return 하는 solution 함수를 완성해 주세요.

 

솔루션

#include <string>
#include <vector>

using namespace std;

int solution(vector<int> date1, vector<int> date2) {
    int answer = 0;
    for(int i = 0; i < 3; i++){
        if(date1[i] < date2[i]){
            return 1;
        }
        if(date1[i] > date2[i]){
            return 0;
        }
    }
    return answer;
}

 

메모

처음에는 다음 내용의 코드를 놓쳤는데

date1 = [2022, 1, 1]
date2 = [2021, 12, 31 ]

이 반례 때문에 틀렸었다.

 

if(date1[i] > date2[i]){
            return 0;
        }

조건을 추가해서 해결했다.

 

https://school.programmers.co.kr/learn/courses/30/lessons/181838

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr