【P1582】倒水(数论??暴力!!)
这个题我很无语,一开始看绿题,还是数论,应该不会特别简单,应该要动笔写上好一会,过了一会旁边
#祝神
说这原来是个蓝题,我顿时觉得十分迷茫。。。
结果看了这个题看了一会,仔细一想,woc,这题怕不是可以暴力出解,况且这个范围确实也够了啊,妥妥0ms出解。。就试着打了一下。。然后T两个点。。。过了一会,发现2在进行乘的时候,如果n足够大,会爆出int,所以改成longlong。
#include<iostream> #include<cstdio> #include<cmath> #include<cstring> #include<algorithm> #define re register #define wc 0.0000000001 using namespace std; long long k,n,s,x; int main() { cin>>n>>k; while(k>1) { k--; s=2; while(n>=s) s<<=1; s>>=1; n-=s; if(n<=1) { cout<<"0"; return 0; } } s=2; while(n>s) s<<=1; s-=n; cout<<s; }
对于作者转载文章,欢迎继续转载。
对于作者原创文章,请注明出处之后转载。