思路:找规律
AC代码:
#include "iostream" #include "string.h" #include "stack" #include "queue" #include "string" #include "vector" #include "set" #include "map" #include "algorithm" #include "stdio.h" #include "math.h" #define ll long long #define bug(x) cout<<x<<" "<<"UUUUU"<<endl; #define mem(a) memset(a,0,sizeof(a)) #define mp(x,y) make_pair(x,y) #define pb(x) push_back(x) using namespace std; const long long INF = 1e18+1LL; const int inf = 1e9+1e8; const int N=1e5+100; const ll mod=1e9+7; ///1011 ll n,k,ans; int main(){ //ios::sync_with_stdio(false),cin.tie(0),cout.tie(0); int T=0; while(cin>>n>>k){ if(k<=n){ cout<<"Case #"<<++T<<": "<<k<<"\n"; continue; } k-=n; ll p=k%((n-1)*2); if(p==0) ans=n; else{ if(p>n-1) p-=n-1; ans=p; } cout<<"Case #"<<++T<<": "<<ans<<"\n"; } return 0; }