[백준] - 1500번: 최대곱(Java)

병찬·2022년 8월 10일
0

Baekjoon Online Judge

목록 보기
17/18
post-thumbnail

문제📝


풀이💡

  • S를 K로 나눈 값을 div에, S를 K로 나눈 나머지를 mod에 넣어준다.
  • k까지 반복문을 통해서 나머지 갯수만큼 div에 +1한 값을 max와 곱해준다.
  • i가 mod보다 크면 max에 div를 곱해준다.

코드💻

// 백준 Silver2 - 1500(최대곱)
// 문제링크: https://www.acmicpc.net/problem/1500

import java.util.*;

public class Main {
	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		int S = sc.nextInt(); // 정수 S
		int K = sc.nextInt(); // 합이 S인 K개의 정수
		int div = S / K; 
		int mod = S % K;
		long max = 1;
		for (int i=1; i<=K; i++) {
			if(i<=mod) { // 나머지 갯수만큼 +1
				max *= (div+1);
			}else {
				max *= div;
			}
		
		}
		System.out.println(max);
	}	
}

결과😎


느낀점👨‍💻

간단하게 알고리즘만 구현하면 되여서 생각보다 쉬운 문제였다.


Sinbmil의 알고리즘 문제 코드

-> https://github.com/Sinbmil/Algorithm-Study

profile
코딩을 열심히 하고 있습니다:)

0개의 댓글