题目链接
https://www.acwing.com/problem/content/1971/
思路我们从id较大的点往id较小的点进行遍历操作,然后找出一个满足条件的id就直接输出然后return 0,否则循环完后直接输出-1
代码#include
using namespace std;
#define ll long long
#define mod 1000000009
#define endl "\n"
#define PII pair
ll ksm(ll a,ll b) {
ll ans = 1;
for(;b;b>>=1LL) {
if(b & 1) ans = ans * a % mod;
a = a * a % mod;
}
return ans;
}
ll lowbit(ll x){return -x & x;}
const int N = 2e6+10;
int n,k,a;
vector V[N];
int main()
{
cin>>n>>k;
int mx = 0;
for(int i = 1;i >a;
mx = max(mx,a);
V[a].push_back(i);//放进vector里面
}
for(int i = mx;i >= 0; --i) {//从id大的到id小的遍历
if(V[i].size())
for(int j = 0,len = V[i].size();j
关注
打赏