2017北京国庆刷题Day1 morning
2017-10-01 16:48
274 查看
期望得分:100+100+100=300
实际得分:100+100+70=270
[b]T1位运算1(bit)[/b]
[b]Time Limit:1000ms Memory Limit:128MB[/b]
题目描述
LYK拥有一个十进制的数N。它赋予了N一个新的意义:将N每一位都拆开来后再加起来就是N所拥有的价值。例如数字123拥有6的价值,数字999拥有27的价值。
假设数字N的价值是K,LYK想找到一个价值是K-1的数字,当然这个答案实在太多了,LYK想使得这个价值为K-1的数字尽可能大。
输入格式(bit.in)
一个数N。
输出格式(bit.out)
一个数表示答案。你需要输出一个非负整数,且这个数不包含前导0。
输入样例1
199
输出样例1
198
输入样例2
1000
输出样例2
0
对于20%的数据n<=10
对于40%的数据n<=100
对于60%的数据n<=1000
对于100%的数据1<=n<=100000。
最后一个非零数-1
View Code
实际得分:100+100+70=270
[b]T1位运算1(bit)[/b]
[b]Time Limit:1000ms Memory Limit:128MB[/b]
题目描述
LYK拥有一个十进制的数N。它赋予了N一个新的意义:将N每一位都拆开来后再加起来就是N所拥有的价值。例如数字123拥有6的价值,数字999拥有27的价值。
假设数字N的价值是K,LYK想找到一个价值是K-1的数字,当然这个答案实在太多了,LYK想使得这个价值为K-1的数字尽可能大。
输入格式(bit.in)
一个数N。
输出格式(bit.out)
一个数表示答案。你需要输出一个非负整数,且这个数不包含前导0。
输入样例1
199
输出样例1
198
输入样例2
1000
输出样例2
0
对于20%的数据n<=10
对于40%的数据n<=100
对于60%的数据n<=1000
对于100%的数据1<=n<=100000。
最后一个非零数-1
#include<cstdio> #include<iostream> #define N 100002 using namespace std; int n,m; int a ,suf ; bool vis ,t=true; void read(int &x) { x=0; char c=getchar(); while(!isdigit(c)) c=getchar(); while(isdigit(c)) { x=x*10+c-'0'; c=getchar(); } } void pre() { int r=m; vis[a[m]]=1; suf[m]=m; for(int i=m-1;i;i--) { if(!vis[a[i]]) suf[i]=r,vis[a[i]]=true; else { while(r>i) { if(a[r]==a[i]) { r--;break; } vis[a[r--]]=false; } suf[i]=r; } } for(int i=1;i<=m&&t;i++) if(suf[i]<m) t=false; } bool check(int x) { int first=0; if(x) { first=n-x; if(suf[1]<first) return false; } int r=first; for(int i=first+1;i<=m;i+=n) { r=min(m,r+n); if(suf[i]<r) return false; } return true; } int main() { freopen("music.in","r",stdin); freopen("music.out","w",stdout); read(n); read(m); for(int i=1;i<=m;i++) read(a[i]); pre(); int ans=0; for(int i=0;i<n;i++) if(n-i>m) ans+=t; else ans+=check(i); printf("%d",ans); }
View Code
相关文章推荐
- 2017北京国庆刷题Day3 morning
- 2017北京国庆刷题Day4 morning
- 2017北京国庆刷题Day1 morning T2
- 2017国庆 清北学堂 北京综合强化班 Day1
- 2017北京国庆刷题Day1 afternoon
- 2017北京国庆刷题Day6 morning
- 2017北京国庆刷题Day5 morning
- 2017北京国庆刷题Day7 morning
- 2017北京国庆刷题Day2 morning
- 2017国庆郑州集训Day1
- 2017长乐国庆欢乐赛Day1
- 2017北京国庆刷题Day5 afternoon
- 2017 国庆湖南 Day1
- 2017北京国庆刷题Day3 afternoon
- 2017北京国庆刷题Day7 afternoon
- 北京集训②DAY1 Morning
- 2017北京国庆刷题Day6 afternoon
- 2017北京国庆刷题Day7 afternoon
- 2017北京国庆刷题Day3 afternoon
- 学大伟业 2017 国庆 Day1