QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#885431 | #10071. Hora | guleng2007# | Compile Error | / | / | C++20 | 1.1kb | 2025-02-06 15:38:26 | 2025-02-06 15:38:27 |
Judging History
This is the latest submission verdict.
- [2025-02-06 15:38:27]
- Judged
- Verdict: Compile Error
- Time: 0ms
- Memory: 0kb
- [2025-02-06 15:38:26]
- Submitted
answer
#include <bits/stdc++.h>
#include "hora.h"
using namespace std;
int calc(int x)
{
x %= n;
return ask(x,(x+k-1)%n)*2-k;
}
int calc(int l,int r)
{
if(r>l)
return calc(l,r+n);
if(l==r)
return l;
int mid=(l+r)/2, val=calc(mid);
if(val<0)
return calc(mid+1,r);
if(val>0)
return calc(l,mid-1);
return mid;
}
vector <int> vec;
int calcsmall(int l,int r)
{
if(l==r)
return vec[l];
int mid=(l+r)/2, val=calc((vec[mid]+k-1)%n);
if(val<=0)
return calc(l,mid);
return calc(mid+1,r);
}
int calcbig(int l,int r)
{
if(l==r)
return vec[l];
int mid=(l+r)/2, val=calc((vec[mid]+k-1)%n);
if(val>=0)
return calc(l,mid);
return calc(mid+1,r);
}
int solve(int N,int K)
{
n=N, k=K;
if(k==n)
return 0;
if(k%2==1)
k--;
if(k==0)
return 0;
vec.clear();
vec.push_back(0);
for(int i=k;i!=0;i=(i+k)%n)
vec.push_back(i);
int val=calc(vec.back());
if(val==0)
return vec.back();
int id1, id2;
if(val>0)
id2=vec.back(), vec.pop_back(), id1=calcsmall(0,vec.size()-1);
else
id1=vec.back(), vec.pop_back(), id2=calcbig(0,vec.size()-1);
return calc(id1,id2)%n;
}
Details
answer.code: In function ‘int calc(int)’: answer.code:7:14: error: ‘n’ was not declared in this scope 7 | x %= n; | ^ answer.code:8:25: error: ‘k’ was not declared in this scope 8 | return ask(x,(x+k-1)%n)*2-k; | ^ answer.code: In function ‘int calc(int, int)’: answer.code:14:33: error: ‘n’ was not declared in this scope 14 | return calc(l,r+n); | ^ answer.code: In function ‘int calcsmall(int, int)’: answer.code:34:45: error: ‘k’ was not declared in this scope 34 | int mid=(l+r)/2, val=calc((vec[mid]+k-1)%n); | ^ answer.code:34:50: error: ‘n’ was not declared in this scope 34 | int mid=(l+r)/2, val=calc((vec[mid]+k-1)%n); | ^ answer.code: In function ‘int calcbig(int, int)’: answer.code:45:45: error: ‘k’ was not declared in this scope 45 | int mid=(l+r)/2, val=calc((vec[mid]+k-1)%n); | ^ answer.code:45:50: error: ‘n’ was not declared in this scope 45 | int mid=(l+r)/2, val=calc((vec[mid]+k-1)%n); | ^ answer.code: In function ‘int solve(int, int)’: answer.code:53:9: error: ‘n’ was not declared in this scope 53 | n=N, k=K; | ^ answer.code:53:14: error: ‘k’ was not declared in this scope 53 | n=N, k=K; | ^