안녕하세요. 오늘은 랜덤게임 비슷한걸 할 거예요.

문제

https://www.acmicpc.net/problem/27865

아이디어

수는 최대 1000개 입니다. 하지만 질문은 20000번할 수 있습니다. 그러므로 1만 계속 물어보면 언젠가 Y가 나올확률이 매우 높습니다.

참고로 20000번질문을 했는데 1이 한번도 나오지 않을 확률은 0.999^20000은 대략 2*10^(-9) (이십억분의 1)정도 됩니다.

소스코드

#include <iostream>
using namespace std;

int main(void)
{
    ios_base::sync_with_stdio(false); cin.tie(NULL);
    int n;
    char c;
    cin >> n;
    while (true)
    {
        cout << "? 1\n";
        cout << flush;
        cin >> c;
        if (c == 'Y')
        {
            cout << "! 1";
            cout << flush;
            return 0;
        }
    }
}


감사합니다.

0개의 댓글