
"삼각 김밥 Y그램 당 X원" 일 때 삼각 김밥 1,000그램 가격의 최저가를 구하는 문제이다.
Y그램 당 X원이기 때문에 X/Y를 해주면 1그램 당 가격이 나오기 때문에 어렵지 않게 해결할 수 있다.
1,000그램 가격을 구한 후 배열에 넣고 오름차순 정렬 후 첫번째 인덱스를 뽑아내면 최저가를 구할 수 있다.
주의해야할 점은 출력을 소수점 둘째자리까지 나타내야하기 때문에 데이터타입에 신경을 써줘야한다.
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int x = sc.nextInt();
int y = sc.nextInt();
double result = 1000*(double)x/y;
int n = sc.nextInt();
double [] arr = new double[n+1];
arr[0] = result;
for(int i=0;i<n;i++) {
int xi = sc.nextInt();
int yi = sc.nextInt();
double resulti = 1000*(double)xi/yi;
arr[i+1] = resulti;
}
Arrays.sort(arr);
System.out.printf("%.2f",arr[0]);
}
}
https://www.acmicpc.net/problem/2783
2783번: 삼각 김밥
첫째 줄에 세븐25의 삼각 김밥 가격 정보 X와 Y가 주어진다. (Y그램 당 X원) (1 ≤ X ≤ 100, 1 ≤ Y ≤ 1,000) 둘째 줄에는 세븐25를 제외한 편의점의 개수 N이 주어진다. (1 ≤ N ≤ 100) 다음 N개의 줄에는 i
www.acmicpc.net
'DEVELOPMENT > ALGORITHM' 카테고리의 다른 글
| [백준 자바 2902번] KMP는 왜 KMP일까? (0) | 2022.02.15 |
|---|---|
| [백준 자바 2959번] 거북이 (0) | 2022.02.06 |