Codeforces Round #262 (Div. 2)总结
来源:互联网 发布:log4j sql语句输出 编辑:程序博客网 时间:2024/06/05 16:38
这次B题悲剧了的,多写了if判断,唉。
A题:
水题一道,直接模拟计算即可。
代码:
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;int n,m;int main(){ while(scanf("%d%d",&n,&m)!=EOF) { int ans=n; int res=n; while(res>=m) { ans+=res/m; res=res%m+res/m; } printf("%d\n",ans); } return 0;}
B题:
如果单从这个题的话最开始无从下手,然后发现其中有个是统计数中各个位数的和,然后就可以枚举这个和(范围就变成了1到81),通过这个枚举可以算出X的值,然后再统计X的各个位上的和是否和最开始的相等,注意判断是否超过范围。比赛的时候我是把范围判断写在前面了,导致部分答案出现问题,唉~
代码:
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;const int maxi=1e9;long long a,b,c,ans[500];int cnt;int GetSum(long long val){ int ans=0; while(val) { ans+=val%10; val/=10; } return ans;}int main(){ while(scanf("%I64d%I64d%I64d",&a,&b,&c)!=EOF) { cnt=0; for(int i=0;i<=81;i++) { long long val=1; for(int j=0;j<a;j++) val*=i; val=val*b; val=val+c; if(val>=maxi) continue; if(val<=0) continue; if(GetSum(val)==i) ans[cnt++]=val; } sort(ans,ans+cnt); printf("%d\n",cnt); for(int i=0;i<cnt;i++) { if(ans[i]<=0) continue; printf("%I64d%c",ans[i],i==cnt-1?'\n':' '); } } return 0;}
C题:
这个题可以用二分答案做,受前天做多校某题的启发,加上看到数据范围,所以确定了二分的思路。
代码:
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;const int inf=1<<30;const int maxn=2e5+100;int n,m,w,a[maxn];int tot[maxn];bool check(int val){ memset(tot,0,sizeof(tot)); int now=0,res=m; for(int i=1;i<=n;i++) { now+=tot[i]; if(a[i]+now<val) { res-=val-a[i]-now; if(res<0) return false; tot[i+w]-=val-a[i]-now; now+=val-a[i]-now; } } return true;}int main(){ while(scanf("%d%d%d",&n,&m,&w)!=EOF) { memset(tot,0,sizeof(tot)); int l=0,r=inf; for(int i=1;i<=n;i++) { scanf("%d",&a[i]); r=max(a[i],r); } int ans=0; while(l<=r) { int mid=(l+r)>>1; if(check(mid)) { ans=mid; l=mid+1; } else r=mid-1; } printf("%d\n",ans); } return 0;}
0 0
- Codeforces Round #262 (Div. 2)总结
- Codeforces Round #262 (Div. 2) 总结:二分
- Codeforces Round #262 (Div. 2)总结
- Codeforces Round #262 (Div. 2) 总结
- Codeforces Round #262 (Div. 2)
- Codeforces Round #262 (Div. 2)
- Codeforces Round #262 (Div. 2)
- Codeforces Round #262 (Div. 2)
- Codeforces Round #262 (Div. 2)
- Codeforces Round #262 (Div. 2)
- Codeforces Round #161 (Div. 2)总结
- Codeforces Round #162 (Div. 2)总结
- Codeforces Round #170 (Div. 2)总结
- Codeforces Round #171 (Div. 2)总结
- Codeforces Round #172 (Div. 2)总结
- Codeforces Round #173 (Div. 2)总结
- Codeforces Round #176 (Div. 2)总结
- Codeforces Round #185 (Div. 2) 总结
- CSS 高级语法
- CF 460B Little Dima and Equation
- CSS 注意事项
- 复杂度
- CF#262(div2) C——Present(二分)
- Codeforces Round #262 (Div. 2)总结
- MFC 之支持串行化的类
- 2.2.2 Reverse LinkedList II
- Present
- POJ1182
- MFC 之IDR_MARINFRAME字符串资源解析
- 房祖名承认吸毒八年 带坏柯震东唆使吸毒
- 房祖名涉毒被抓 吸毒真相浮出水面
- Codeforces #Round262 div2C Present