#include <bits/stdc++.h>
using namespace std;
int ans[2000005];
void modezero(int N,int M,int bit){
int i=0;
for(i=0;i<M+N-bit;i++){
ans[i]=(bit+i);
}
int k=0;
for(int k=0;k<bit-M;i++,k++){
ans[i]=(M+k);
}
}
void modenozero(int N,int M){
ans[0]=M;
int tmp=N-1,tmpm=M;
int bit=0,cnt=0;
while(tmp){
if(tmpm%2==1) bit+=(1<<cnt);
tmp/=2;
tmpm/=2;
cnt++;
}
for(int k=M;k<M+N;k++,bit++){
if(bit==N) bit=1;
ans[bit]=k;
}
}
int main()
{
int a,b;
cin>>a>>b;
//iki hal var a+b 2 üzeri n içerir içermez ona bakıcağım
int c=b+a-1;
int bita=0,bitc=0;
int tmpa=b,tmpc=c;
int bit=1;
while(tmpa){
tmpa/=2;
tmpc/=2;
bit<<=1;
}
if(tmpc!=0) modezero(a,b,bit);
else modenozero(a,b);
for(int i=0;i<a;i++) cout<<i<<" "<<ans[i]<<endl;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |