제출 #335661

#제출 시각아이디문제언어결과실행 시간메모리
335661couplefire커다란 상품 (IOI17_prize)C++17
컴파일 에러
0 ms0 KiB
#include "prize.h"
#include <bits/stdc++.h>
using namespace std;

int find_best(int n) {
    if(n == 1) return 0;
    int mx = 0;
	for(int i = 0; i<100; i++){
        srand(time(1));
        vector<int> vv = ask(rand()%n);
        mx = max(mx, vv.front()+vv.back());
    }
    int cur = 0;
    for(int i = 0; i<mx; i++){
        int lo = cur, hi = n-1;
        while(lo < hi){
            int mid = lo+(hi-lo)/2;
            vector<int> vv = ask(mid);
            int a = vv.front(), b = vv.back();
            if(a+b < mx) hi = mid;
            else if(a == i) lo = mid+1;
            else hi = mid-1;
        }
        vector<int> vvv = ask(lo);
        if(vvv.front()+vvv.back() == 0) return lo;
        cur = lo+1; 
    }
	return 0;
}

컴파일 시 표준 에러 (stderr) 메시지

prize.cpp: In function 'int find_best(int)':
prize.cpp:9:20: error: invalid conversion from 'int' to 'time_t*' {aka 'long int*'} [-fpermissive]
    9 |         srand(time(1));
      |                    ^
      |                    |
      |                    int
In file included from /usr/include/c++/9/ctime:42,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:49,
                 from prize.cpp:2:
/usr/include/time.h:75:29: note:   initializing argument 1 of 'time_t time(time_t*)'
   75 | extern time_t time (time_t *__timer) __THROW;
      |                     ~~~~~~~~^~~~~~~