Junior-Developer
Home
  • Category (316)
    • 문제풀이 (270)
      • 백준oj (201)
      • 프로그래머스 (53)
      • 명품 자바 프로그래밍(개정4판) (11)
      • 구름 (5)
    • 알고리즘 (6)
    • Node.js (2)
    • 체크리스트 (37)
블로그 내 검색
Home

Junior-Developer

1일 1커밋! 1일 1 백준!

  • 문제풀이/프로그래머스

    [프로그래머스] 2016년

    2020. 11. 24.

    by. Hyeon-Uk

    반응형

    programmers.co.kr/learn/courses/30/lessons/12901?language=cpp

     

    코딩테스트 연습 - 2016년

    2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까

    programmers.co.kr


    문제풀이)

    풀기쉽게 월화수목금토일을 저장해주는 day배열(1월1일은 금요일이니 금,토,일,월,화,수,목 순으로 저장)을 만들고,

    월별 며칠까지 있는지를 month배열에 저장해둔다. 윤년이므로 2월달은 29일로 저장해준다.

     

    그런뒤 a월 이전까지의 총 날짜를 다 더해주고, 남은b일을 더한다음 1을 빼주고 modulo(%) 7을 해준다음 해당 요일의 값을 return 해주면 된다.

     

    #include <string>
    #include <vector>
    
    using namespace std;
    string day[7]={"FRI","SAT","SUN","MON","TUE","WED","THU"};
    int month[12]={31,29,31,30,31,30,31,31,30,31,30,31};
    string solution(int a, int b) {
        string answer = "";
        int sum=-1;
        for(int i=1;i<a;i++){
            sum+=month[i-1];
        }
        sum+=b;
        answer=day[sum%7];
        return answer;
    }

     

    반응형

    '문제풀이 > 프로그래머스' 카테고리의 다른 글

    [프로그래머스] 3진법 뒤집기  (0) 2020.11.24
    [프로그래머스] 가운데 글자 가져오기  (0) 2020.11.24
    [프로그래머스] K번째수  (0) 2020.11.24
    [프로그래머스] 체육복  (0) 2020.11.24
    [프로그래머스] 모의고사  (0) 2020.11.23

    댓글

    관련글

    • [프로그래머스] 3진법 뒤집기 2020.11.24
    • [프로그래머스] 가운데 글자 가져오기 2020.11.24
    • [프로그래머스] K번째수 2020.11.24
    • [프로그래머스] 체육복 2020.11.24
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

Powered by ⓒ Kakao Corp.

Designed by Nana
블로그 이미지
Hyeon-Uk

티스토리툴바