전체 글

좋은 성과를 얻으려면 한 걸음 한 걸음이 힘차고 충실하지 않으면 안 된다. -단테
문제설명입력 & 출력 나의 풀이 이번 문제는 각 로프들에 대한 정보가 주어졌을 때, 이 로프들을 이용하여 들어 올릴 수 있는 물체의 최대 중량을 구하는 문제입니다. 이 문제에서 중요한 것은 각 로프가 들 수 있는 중량을 기준으로, 여러 로프를 함께 사용하여 최대로 들 수 있는 중량을 계산하는 것입니다. 먼저 빠른 입력을 위해서 BufferedReader 클래스를 사용하여 입력을 받아주고, 각 로프를 rope배열에 넣어줍니다. 이 때 각 로프에 대해 해당 로프를 포함하여 그보다 강한 모든 로프들이 버틸 수 있는 최대 중량을 계산하는 것이 효과적입니다.로프를 중량이 높은 순서대로 정렬하면, 각 로프를 포함하여 그보다 강한 로프들이 함께 버틸 수 있는 최대 중량을 쉽게 계산할 수 있다는 점입니다. 따라서 먼저..
·Coding Test/백준
문제설명입력 & 출력 나의 풀이 이번 문제는 길이가 N인 두 배열을 계산하는 점화식 A [N-1] × B [N-1]이 최솟값을 가지게 만드는 문제입니다. 위 점화식 그대로 사용하게 된다면 1*2 + 1*7 + 1*8 + 6*3 + 0*1 ➡️ 35가 나오게 됩니다. 이때 배열의 정렬을 하고 작은 값과 큰값을 서로 곱해주면 최솟값이 나옵니다. 먼저 빠른 입력을 위해 BufferedReader 클래스를 사용하여 입력을 받아주고 StringTokenizer 클래스를 사용하여 공백을 기준으로 분리를 해서 배열에 저장을 합니다. 그리고 Arrays.sort() 메서드를 사용하여 A를 오름차순으로 정렬해 주고, B배열을 내림차순으로 정렬합니다. (A와 B의 정렬이 바뀌어도 상관없습니다.) 이 때 오름차순은 상관없지..
·Coding Test/백준
문제설명입력 & 출력 나의 풀이  이번 문제는 봉지는 3kg, 5kg가 있으며 최대한 적은 봉지를 사용하면서 Nkg의 설탕을 정확하게 배달하는 문제입니다.  그리디 알고리즘의 문제로서 가장 적은 봉지를 사용하려면 kg가 큰 5kg 봉지를 최대한 많이 사용해야 하는 것은 당연합니다. 먼저 while문을 사용하여 반복문을 돌려줍니다. 이때 5로 나누어 떨어지는 경우 5로 나눈 몫을 봉지 개수 cnt에 누적을 합니다. 만약 5kg봉지로만 정확하게 배달할 수 있으면 최적의 경우이기 때문에 그대로 return 해줍니다.예를 들어 설탕이 15kg라면5kg봉지 3개만 필요합니다.그러나 5kg봉지로만 배달할 수 없다면 3kg 봉지를 어쩔 수 없이 사용해야 하기 때문에 설탕을 3만큼 빼주고 봉지 개수 cnt를 추가합니다..
·Coding Test/백준
문제설명입력 & 출력 나의 풀이  이번 문제는 5개의 정수가 주어졌을 때 5개 중 세 개로 나누어 지는 가장 작은 자연수를 구하는 문제입니다.제약 조건이 작음: 주어진 문제에서 숫자의 범위는 크지 않다.명확한 조건: 숫자를 1씩 증가시키면서 최소 3개의 숫자에 대해 나누어 떨어지는지 확인하는 조건이 명확위 조건에 부합하여 브루트 포스 알고리즘을 사용하면 쉽게 해결할 수 있습니다. 대부분의 코드에 대한 설명은 주석을 달아놨습니다. 전체적인 접근 방식은 다음과 같습니다.입력받기: 5개의 숫자를 입력받아 배열에 저장합니다.숫자 증가: 1부터 시작하여 가능한 숫자를 하나씩 증가시킵니다.나누어 떨어지는지 검사: 증가한 숫자가 배열의 숫자들 중 최소 3개의 숫자로 나누어 떨어지는지 검사합니다.조건 만족 시 종료: ..
지누박
ZINU