algorithm

더블릿|dovelet - 2번째 계단 - 축소 복사/reduction

블루건 2016. 8. 1. 08:05

문제


프로그램 명: reduction
제한시간: 1 초

560 * 400 밀리미터 이미지를 표준 용지( 218 * 280 mm) 로 복사하려고 한다.

이 복사기는 축소 기능이 있어 용지에 맞게 가능한 크게 복사하려고 하는 경우 50 % 축소 복사하면 된다. 물론 90 도 회전 할수도 있다.( 랜드스케이프 모드)

문제는 복사할 이미지와 복사용지가 주어질 때 이 이미지를 복사용지에 잘림이 없이 최대로 넣기 위한 위한 축소 % 를 구하는 문제이다.

입력

4 개의 정수가 입력으로 주어진다. 처음 두 수는 복사할 이미지의 크기이고 다음 두 수는 복사용지의 크기이다.

출력

답은 1 에서 100% 사이의 정수이다.

입출력 예

입력

560 400 218 280

출력

50%

입력

10 25 88 10

출력

100%

입력

8 13 5 1

출력

12%

입력

199 333 40 2

출력

1%
출처:Mid-Central USA 2005


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <algorithm>
 
using namespace std;
 
int main()
{
    int a, b, c, d, bigX, bigY, smallX, smallY;
    cin >> a >> b >> c >> d;
 
    bigX = max(a, b);
    (a == bigX) ? bigY = b : bigY = a;
    smallX = max(c, d);
    (c == smallX) ? smallY = d : smallY = c;
 
    bool find = false;
    for (int i = 1; i <= 100; i++)
    {
        if (i * bigX > smallX * 100 || i * bigY > smallY * 100)
        {
            cout << i - 1 << "%";
            find = true;
            break;
        }
    }
 
    if (!find)
        cout << "100%";
    
    return 0;
}
cs