https://www.acmicpc.net/problem/23971
23971번: ZOAC 4
i행 j열 자리를 (i, j)라고 할 때, (1,1)에 참가자가 앉은 경우 다른 참가자는 (1,2), (2,1), (2,2) 자리를 제외한 나머지 자리에 앉을 수 있다. (2,2)의 경우는 (1,1)과 행 번호 및 열 번호의 차가 1보다 크
www.acmicpc.net
H행, W열의 자리가 놓여져있는 상황이다.
세로로 N만큼 떨어져서 앉아야하는데, 그럼 한 사람이 앉은 자리를 더해줘서 N+1 의 자리를 차지한다고 본다.
그럼 H 행에서 N+1의 자리를 몇번 차지할 수 있는지 구하고, 그 값을 올림해준다. (꼭 N+1을 차지하지 않더라도 한자리만 있어도 앉을 순 있으므로 )
그럼 W 열도 마찬가지 방법으로 구한 뒤 두 값을 곱해주면 우리가 원하는 몇 명이 앉을 수 있는지를 알 수 있다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public Class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
double h = Integer.parserInt(st.nextToken());
double w = Integer.parserInt(st.nextToken());
double n = Integer.parserInt(st.nextToken());
double m = Integer.parserInt(st.nextToken());
int x = (int) Math.ceil(h/(n+1));
int y = (int) Math.ceil(w/(m+1));
System.out.println(x*y);
}
'개발 > Algorithm' 카테고리의 다른 글
[프로그래머스] JadenCase 문자열 만들기 (0) | 2023.12.02 |
---|---|
[백준 5073] 삼각형과 세 변 (0) | 2023.12.02 |
[프로그래머스] 최소 직사각형 (Java 풀이) (0) | 2023.08.06 |
[PS] 코딩테스트에 나오는 완전탐색 (0) | 2023.07.31 |
[프로그래머스] 요격 시스템 (Java 풀이) (0) | 2023.04.16 |
댓글