您好,欢迎来到葵兜健康网。
搜索
您的当前位置:首页CodeforcesRound#209(Div.2) C.PrimeNumber_html/css

CodeforcesRound#209(Div.2) C.PrimeNumber_html/css

来源:葵兜健康网


t题目:http://codeforces.com/problemset/problem/359/C

n多的WA................................自己的代码能力还是很有问题的.......................

总结下自己写代码的状态:
1、没有理清思路就开始写......

2、排错的时候,应该好好理理自己的逻辑,看看代码是否把自己的逻辑表达清楚

3、看别人代码的时候,别老是想着看不懂,那么你一定看不懂,理理思路,尤其模拟下,试试去理解。

4、排错的时候,不要稍微改动一点点,就重新跑一下程序,这样很花时间,基本确定没有可以改的地方了,再去跑

5、不要死盯着自己的思路,WA掉之后,跳出自己原来的思路看看,试试


GCD幂次在sum-pri[n]-sum之间,枚举次数,那个循环写的还是可以的,好好看下-------其实还是我的代码能力不行,难以用代码表达出自己想做的东西

#include #include #include #include #include #include using namespace std;#define ll long longconst ll MOD = 1000000007;const int SIZE = 1e5+10;ll num[SIZE];ll Qmod(ll base,ll n){ ll ret=1; while(n) { if(n&1) ret=ret*base%MOD; base=base*base%MOD; n>>=1; } return ret;}int main(){ ll x,sum,tmpn; ll n; while(scanf("%Id%Id",&n,&x)!=EOF) { scanf("%Id",&num[1]); sum=num[1]; for(ll i=2;i<=n;i++) { scanf("%Id",&num[i]); sum+=num[i]; } tmpn=sum-num[n]; for(ll p=num[n],cc=0;p>0;p--) { while(n&&num[n]==p) { n--; cc++;//1的个数 } if(cc%x)break; tmpn++; cc/=x; } printf("%Id\n",Qmod(x,tmpn)); } return 0;}

Copyright © 2019- kduo.cn 版权所有

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务