반응형
https://www.acmicpc.net/problem/4623
자료형을 이용하는 문제였습니다.
📕 풀이방법
📔 입력 및 초기화
while loop를 수행합니다. 1. 줄여야할 이미지의 가로, 세로를 의미하는 일차원 a배열, 기준 이미지의 가로, 세로를 의미하는 일차원 b배열, 답을 출력할 percent를 선언해줍니다. 2. a, b를 정렬해줍니다.
📔 풀이과정
다시 while loop를 수행합니다. 적정 percent를 찾았다면 break해줍니다.
📔 정답출력
#include <bits/stdc++.h>
using namespace std;
int main(){
while(1){
int a[2], b[2], percent = 0;
cin >> a[0] >> a[1] >> b[0] >> b[1];
if(!a[0] && !a[1] && !b[0] && !b[1]) break;
sort(a, a + 2);
sort(b, b + 2);
while(1) {
double q = (double)a[0] * (100 - percent) / 100;
double w = (double)a[1] * (100 - percent) / 100;
if(q <= (double)b[0] && w <= (double)b[1]) break;
percent++;
}
cout << 100 - percent << "%" << '\n';
}
}
📕 Code
#include <bits/stdc++.h>
using namespace std;
int main(){
while(1){
int a[2], b[2], percent = 0;
cin >> a[0] >> a[1] >> b[0] >> b[1];
if(!a[0] && !a[1] && !b[0] && !b[1]) break;
sort(a, a + 2);
sort(b, b + 2);
while(1) {
double q = (double)a[0] * (100 - percent) / 100;
double w = (double)a[1] * (100 - percent) / 100;
if(q <= (double)b[0] && w <= (double)b[1]) break;
percent++;
}
cout << 100 - percent << "%" << '\n';
}
}
'Algorithm > Implementation' 카테고리의 다른 글
(C++) - 백준(BOJ) 4655 : Hangover (0) | 2021.12.05 |
---|---|
(C++) - 백준(BOJ) 4635 : Speed Limit (0) | 2021.12.05 |
(C++) - 백준(BOJ) 6810 : ISBN (0) | 2021.12.03 |
(C++) - 백준(BOJ) 6812 : Good times (2) | 2021.12.03 |
(C++) - 백준(BOJ) 4619 : 루트 (0) | 2021.12.02 |