728x90
2016년
코딩테스트 연습 - 2016년
2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까��
programmers.co.kr
문제 설명
주어진 a월 b까지의 일 수를 모두 계산하여 7로 나눈 나머지를 이용하여 탐색
문제 풀이
*소스코드 : C++ *
#include <iostream>
#include <string>
#include <vector>
using namespace std;
string solution(int a, int b) {
string answer = "";
vector<string> day = {"FRI","SAT","SUN","MON","TUE","WED","THU"};
vector<int> date_of_month = {31,29,31,30,31,30,31,31,30,31,30,31};
int d = -1;
for(int i=0; i<a-1; i++)
d +=date_of_month[i];
d+=b;
answer = day[d%7];
return answer;
}
소스코드 : Python
def solution(a, b):
day = ["FRI","SAT","SUN","MON","TUE","WED","THU"]
date_of_month = [31,29,31,30,31,30,31,31,30,31,30,31]
return day[(sum([ date_of_month[i] for i in range(a-1)]) + b -1)%7]
728x90
300x250