[SWEA] 7532. 세영이의 SEM력 연도
문제 세영이는 태양(S)과 지구(E)와 달(M)을 이용하여 연도를 기억한다. 이를 이용한 방법을 SEM력이라고 부르며, SEM력은 자연수 3개, S, E, M으로 이루어져있다. 첫 번째 수는 태양, 두 번째는 지구, 세 번째는 달과 관련 있다. AD 1년에 SEM력을 1 1 1로 정의했다. 1년이 지날 때마다 각 수를 1씩 증가시키는데, S는 365보다 커지면 1로, E는 24보다 커지면 1로, M은 29보다 커지면 1로 돌아온다. 예를 들어서 AD 24년은 24 24 24이고 AD 25년은 25 1 25이다. SEM력으로 이루어진 연도가 주어졌을 때, 이를 만족하는 실제 연도 중 가능한 가장 빠른 연도를 구하여라. 풀이방법 세 정수 S, E, M을 입력받았을 때, E가 가장 작은 수이므로 기준으로 잡는..
2020. 2. 24.
[SWEA] 4371. 항구에 들어오는 배
문제 민석이는 항구가 있는 작은 마을에 산다. 이 항구에는 배가 아주 드물게 지나다닌다. 민석이는 어느날 모든 배들이 항구에 들어온 것을 보았다. 민석이는 이 날을 1일차로 지정하였다. 민석이는 배가 한 척이라도 항구에 들렀던 날을 “즐거운 날"로 이름짓고, 1일차부터 즐거운 날들을 모두 기록하였다. 그러던 중, 한 가지 규칙을 발견했는데, 그 규칙은 각 배들은 항구에 주기적으로 들른다는 것이었다. 예를 들어, 주기가 3인 배는 항구에 1일차, 4일차, 7일차, 10일차 등에 방문하게 된다. 민석이가 1일차부터 기록한 “즐거운 날"들의 목록이 주어질 때, 항구에 들렀던 배의 최소 수를 알아내자. 이 때, 항상 답이 존재하는 입력만 주어진다. 풀이방법 오름차순으로 입력되는 수는 등차(d1, d2, d3, ..
2020. 2. 24.
[SWEA] 7087. 문제 제목 붙이기
문제 은기는 대회의 문제들에 사용할 수 있는 제목을 N개 만들었다. 자영이는 제목의 가장 앞 글자에 알파벳 대문자 A부터 시작하여, A, B, C, … , Z가 순서대로 한 번씩 등장하면 좋겠다고 하였다. 만약 도중에 특정 알파벳이 문제 제목의 맨 앞 글자로 등장하지 않으면 그 이후의 알파벳은 사용하지 않는다. 예를 들어, 문제 제목으로 Air, Dad, Ear, Blue, Ace가 있다면, A와 B는 등장하였지만, C는 등장하지 않았기 때문에 최대 2개의 문제 제목을 사용할 수 있는 것이다. 은기가 만든 문제들의 제목이 주어질 때, 자영이가 정한 규칙에 따라서 사용할 수 있는 최대 문제 제목의 개수를 계산하는 프로그램을 작성하라. 풀이방법 알파벳 대문자 갯수 크기의 배열을 선언하고 0으로 초기화한다. ..
2020. 2. 23.