即使有很多,cin也不会读取输入

时间:2019-07-25 16:30:45

标签: c++ input stdin cin

我给我的代码4个测试用例,每个测试用例包含3个数字。在第一个测试用例中,一切都很好。在第二个测试用例中,程序将读取前两个数字,但会停止而不读取第三个数字,并且程序将无错误终止。

我试图注释掉一些函数,当我注释掉整个内部for循环和combine_congruences(m)行时,程序将接收所有输入。但是,即使我取消了for循环和combine_congruences(m)行的注释,该代码也不再接受输入并终止。 ll是long long int的宏。

int main(){
    ll t, n, r, m;
    cin >> t;
    cout << "t is: " << t << endl;
    for(int i = 0; i < t; i++){
        cout << "TEST CASE " << i << endl;
        cin >> n;
        cout << "read n: " << n << endl;
        cin >> r;
        cout << "read r: " << r << endl;
        cin >> m;
        cout << "read m: " << m << endl;
        factorize(m);        
        printVl(factors);
        for(int j = 0; j < factors.size(); i++){
            cout << "factor no:" << j << endl;
            ll temp = lucas_ncr(n, r, factors[j]);
            answers.pb(temp);
        }
        ll ans = combine_congruences(m);
        cout << ans << endl;
        answers.clear();    
    }
}

我可以根据需要提供功能。我提供的输入是:

4

5 2 1001

5 2 6

20 6 210

13 4 39

0 个答案:

没有答案