[boj][c++] 1072 게임

ppparkta·2022년 9월 10일
1

Problem solving

목록 보기
35/65

1072 게임


졸릴 때 짜서 변수 선언도 엉망이고 마음에 안 든다.
구간 내 가장 작은 값을 찾아내는 문제라서 와일문 벗어난 start 를 출력해주는데 이걸 계속 mid 출력이라고 생각하고 있어서 한번 틀렸다. 사실 지금도 뭐가 다른건지 잘 모르겠는데 잠깨고 봐야지 안돼서 이것저것 수정해보다가 얻어걸렸다. 방ㄴ성함

#include    <iostream>
using namespace std;

long long x, y, z, mid, nz, ans;

int main()
{
    long long start=0;
    long long end=10e9;
    ans=-1;
    cin>>x>>y;
    z=(y*100)/x;
    if(z>=99)
    {
        cout<<ans<<endl;
        return 0;
    }
    while(start<=end)
    {
        mid=(start+end)/2;
        nz=((y+mid)*100)/(x+mid);
        if(nz>z)
            end=mid-1;
        else
            start=mid+1;
    }
    cout<<start<<endl;
}
profile
겉촉속촉

0개의 댓글