목록전체 글 (241)
곽로그
https://www.acmicpc.net/problem/1011 1011번: Fly me to the Alpha Centauri 우현이는 어린 시절, 지구 외의 다른 행성에서도 인류들이 살아갈 수 있는 미래가 오리라 믿었다. 그리고 그가 지구라는 세상에 발을 내려 놓은 지 23년이 지난 지금, 세계 최연소 ASNA 우주 비행사가 되어 새로운 세계에 발을 내려 놓는 영광의 순간을 기다리고 있다. 그가 탑승하게 될 우주선은 Alpha Centauri라는 새로운 인류의 보금자리를 개척하기 위한 대규모 생활 유지 시스템을 탑재하고 있기 때문에, 그 크기와 질량이 엄청난 이유로 최신기술력을 www.acmicpc.net 문제접근 거리가 1부터 10까지에 대한 경우를 하나씩 써나가다보면 규칙이 보인다. 거리(d) ..
1475번: 방 번호 첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수 또는 0이다. www.acmicpc.net 접근방법 처음에 문제 이해를 잘못해서 다른 숫자를 고려하지 않고 6,9의 개수만 고려했다. 그러니까 예를들어 입력이 12369이면 1,2,3,(6,9) 이렇게 4세트. 처음에 좀 시간이 걸려도 문제를 제대로 이해해야 한다. 당연한 얘기지만. 다시. 결국 이 문제에서는 중복된 숫자가 몇개이냐가 관건이다. 예를들어 입력이 112233445577777이라고 했을때 1은 2개, 2는 2개, 3은 2개 4는 2개, 5는 2개 7은 5개 이므로 7때문에 5세트가 필요하다. 즉 중복된 숫자의 개수가 가장 많은 것 만큼 세트가 필요하다는 말이 된다. 그럼 여기서 6..
10250번: ACM 호텔 문제 ACM 호텔 매니저 지우는 손님이 도착하는 대로 빈 방을 배정하고 있다. 고객 설문조사에 따르면 손님들은 호텔 정문으로부터 걸어서 가장 짧은 거리에 있는 방을 선호한다고 한다. 여러분은 지우를 도와 줄 프로그램을 작성하고자 한다. 즉 설문조사 결과 대로 호텔 정문으로부터 걷는 거리가 가장 짧도록 방을 배정하는 프로그램을 작성하고자 한다. 문제를 단순화하기 위해서 호텔은 직사각형 모양이라고 가정하자. 각 층에 W 개의 방이 있는 H 층 건물이라고 가정 www.acmicpc.net 문제접근 H=6,W=12 케이스를 설정하고 표를 그려 하나씩 그려나갔다. 그러면 규칙이 보이는데, 층은 N을 H로 나눈 나머지가 되고 호수는 N를 H로 나눈 몫에 1을 더하면 된다. 근데 여기서 H..
문제 https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 문제 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 www.acmicpc.net 접근방법 최소로 나르려면 5kg을 최대로 해야한다. 그리고 남은 나머지를 3kg으로 운반할 수 있는지를 따지면 된다. N을 5로나..
1977번: 완전제곱수 M과 N이 주어질 때 M이상 N이하의 자연수 중 완전제곱수인 것을 모두 골라 그 합을 구하고 그 중 최솟값을 찾는 프로그램을 작성하시오. 예를 들어 M=60, N=100인 경우 60이상 100이하의 자연수 중 완전제곱수는 64, 81, 100 이렇게 총 3개가 있으므로 그 합은 245가 되고 이 중 최솟값은 64가 된다. www.acmicpc.net 문제접근 M과 N의 범위에 따라 어떻게 처리 해야하는지를 구현하면 된다. 즉, 1(num)부터 시작해서 num의 제곱이 M보다 작으면 num을 1증가시키고 N보다 작거나 같으면 배열에 num의 제곱을 ArrayList에 추가하고 num을 1 증가시킨다. 그 외의 경우에 반복문을 빠져나온다. import java.util.ArrayLis..
1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 접근법 처음에는 문제를 제대로 읽지 않고 1/1 1/2 2/1 1/3 2/2 3/1 이렇게 진행되는 거인줄 알았다. 근데 이게 홀수군과 짝수군인지에 따라 달라진다. 군이라는 말에서 보듯, 이 수열은 군수열이다. 이렇게 나열한다음 규칙을 찾아보면 된다. 1군의 분자 분모의 합은 2, 2군의 분자 분모의 합은 3, 3군의 분자 분모의 합은 4 ... 이런 규칙이 있고, 짝수항과 홀수항에 따라서 짝수항일 경우 분자가 1234 이렇게 변하고 홀수 항일 경우 분모가 1234 이렇게 변한다. 따라서 입력받은 N이 몇번째 군에 속하는지, 그리고 그 군에서 몇번째 항인지를 계산해주면 된다. import ja..
2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌을 때, 벌집의 중앙 1에서 N번 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나가는지(시작과 끝을 포함하여)를 계산하는 프로그램을 작성하시오. 예를 들면, 13까지는 3개, 58까지는 5개를 지난다. www.acmicpc.net 접근법 어려운 척 하는 문제다. 하나씩 나열하면 쉽게 접근할 수 있다. 고등수학1에 (지금은 어디에 속하는지는 모르겠지만) 군수열이 규칙이다. 이렇게 해서 보면 검은색 테두리 까지는 최소경로가 1이고 초록색 테두리 까지는 최소경로가 2, 빨간색 테두리 까지는최소경..
10039번: 평균 점수 문제 상현이가 가르치는 아이폰 앱 개발 수업의 수강생은 원섭, 세희, 상근, 숭, 강수이다. 어제 이 수업의 기말고사가 있었고, 상현이는 지금 학생들의 기말고사 시험지를 채점하고 있다. 기말고사 점수가 40점 이상인 학생들은 그 점수 그대로 자신의 성적이 된다. 하지만, 40점 미만인 학생들은 보충학습을 듣는 조건을 수락하면 40점을 받게 된다. 보충학습은 거부할 수 없기 때문에, 40점 미만인 학생들은 항상 40점을 받게 된다. 학생 5명의 점수가 주어 www.acmicpc.net 문제를 따라서 그대로 코딩하면 된다.