查找数字

查找数字

Attention

本题是一道交互试题,提交时请 复制完整交互库代码到你的代码上方 再进行提交。
请不要修改交互库的任何代码 ,以免导致测试结果错误。
交互库代码和函数代码在最下方。
建议您直接在函数代码里进行编码,然后把函数代码区块粘贴在交互库代码的最下方,再提交完整代码。

Description

找出系统的随机数x。

Task

你需要编写一个函数find_x(),以确定这个数x。
find_x()函数原型为
void find_x(int &x);
最后请保证x存上了你的答案 再调用return;返回上一层函数

你可以调用的函数有
int judge(int n);
如果n比系统生成的数大则返回1;
如果n比系统生成的数小则返回-1;
如果n等于系统生成的数则返回0。
```

Format

Input

测评库只会读入一个整数,表示子任务编号

Output

测评库会根据你的函数运行结果输出不一样的结果。
由于在OJ判题,出现Time Exceeded表示函数调用次数超限;
出现Wrong Answer表明您的x未存上正确答案。

Data range

子任务编号      保证系统生成数的范围       jugde()函数调用次数不得超过   分值
 子任务1             0 ~ 29                       30次                10
 子任务2             0 ~ 100                      30次                30
 子任务3             0 ~ 1073741823               30次                60

对于每个子任务会有多组数据测试,只有当您的代码通过了子任务X的全部测试点才可以获得该子任务的分值。
不过请您放心的是,每开始一组新的测试数据会从今开始统计judge()的调用次数。

Limitation

1s, 128MB for each test case.

交互库代码

/*请不要修改交互库的任何代码,以免导致判题结果错误*/
#include<cstdio>
#include<algorithm>
#include<ctime>
#include<cstdlib>
//#include<windows.h>
#define TIME
//#define FILE 
#define MAXN 15 
using namespace std;
void find_x(int &x);
int judge(int n);
int _id,_T,_c,_t;
int range[MAXN];
bool _f1 = false,_f2 = false;
void Solve() {
    _c = (rand()*rand())%range[_id];
    _c = (rand()*_c)%range[_id];
    _c = (rand()*_c+rand())%range[_id];
    _c = _c>0?_c:-_c;
    int _x = -1;
    find_x(_x);
    if(_x != _c) {
        _f1 = true;
    }
    if(_t > 30) {
        _f2 = true;
    }
    return;
}
int judge(int _n) {
    _t++;
    if(_n == _c)
        return 0;
    return _n>_c?1:-1;
}
void in() {
    range[0] = 10;
    range[1] = 101;
    range[2] = 1073741824;
    scanf("%d",&_id);
    return;
}
int main() {
#ifdef TIME
    srand(time(NULL));
#endif
#ifdef FILE
    freopen(".in","r",stdin);
    freopen(".out","w",stdout);
#endif
    in();
    _T = 100;
    while(_T--) {
        _t = 0;
        Solve();
        if(_f1) {
            puts("Wrong Answer!");
            exit(0);
        }
        if(_f2) {
            while(1) {
                puts("Time Exceeded!");
            }
            puts("Time Exceeded!");
            exit(0);
        }
    }
    puts("Accepted!");
    return 0;
} 

函数

void find_x(int &x) {
    //Please write the code below.
    
    
    return;
}

信息

难度
9
分类
(无)
标签
递交数
9
已通过
1
通过率
11%
上传者