반응형
https://www.acmicpc.net/problem/17450
17450번: 과자 사기
입력은 총 3개의 줄로 이루어지며, 각 줄에는 S, N, U의 순서대로 한 봉지의 가격과 무게가 띄어쓰기를 사이에 두고 주어진다. 모든 입력값은 1 이상 1,000 이하의 정수이다. 세 종류의 과자의 가성
www.acmicpc.net
간단 구현 문제였습니다.
📕 풀이방법
📔 입력 및 초기화
과자목록 snackName, 정답을 출력할 ans, 가성비를 저장할 배열 efficiency, 최대 가성비 best를 선언 후 각 과자 가격, 무게를 입력받습니다.
📔 풀이과정
1. 10개는 고정으로 사므로 가격과 무게에 각각 10을 곱해 저장합니다.
2. 가격이 5000원 이상이면 할인쿠폰을 사용할 수 있으므로 500원을 제해줍니다.
3. 가성비를 구해 efficiency에 저장합니다.
4. 가성비의 최댓값을 best에 저장합니다.
📔 정답출력
for loop를 수행해 best값과 같은 efficiency의 원소가 있으면 출력해줍니다.
📕 Code
#include <bits/stdc++.h>
using namespace std;
char snackName[] = {'S', 'N', 'U'}, ans;
float efficiency[3], best;
int main(){
for(int i = 0; i < 3; i++) {
float price, weight;
cin >> price >> weight;
price *= 10;
weight *= 10;
if(price >= 5000) price -= 500;
efficiency[i] = weight / price;
best = max(best, efficiency[i]);
}
for(int i = 0; i < 3; i++) {
if(best == efficiency[i]) {
ans = snackName[i];
break;
}
}
cout << ans;
}
*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.
'Algorithm > Implementation' 카테고리의 다른 글
(C++, Rust) - 백준(BOJ) 22155 : Простая задача (0) | 2022.09.12 |
---|---|
(C++, Rust) - 백준(BOJ) 17210 : 문문문 (0) | 2022.09.09 |
(C++) - 백준(BOJ) 23806 : 골뱅이 찍기 - ㅁ (2) | 2022.09.07 |
(C++, Rust) - 백준(BOJ) 23804 : 골뱅이 찍기 - ㄷ (0) | 2022.09.06 |
(C++, Rust) - 백준(BOJ) 23794 : 골뱅이 찍기 - 정사각형 (0) | 2022.09.05 |