CodeForces - 835B The number on the board(阅读题)

思路:

一个排序下去,然后从小到大挨个变成数字 9 就好了。

代码:

#include<bits/stdc++.h>
#define maxn 100050

using namespace std;

int k;
char a[maxn];
int b[maxn];
int main()
{
    scanf("%d",&k);
    scanf("%s",a);
    int n=strlen(a);
    int sum=0;
    for(int i=0;i<n;i++)
    {
        b[i]=a[i]-'0';
        sum+=(a[i]-'0');
    }
    sort(b,b+n);
    //cout<<b[0]<<b[1];
    int flag=k-sum;
    int ans=0;
    for(int i=0;i<n;i++)
    {
        if(flag<=0)
        {
            printf("%d\n",ans);
            return 0;
        }
        if(b[i]==9)continue;
        flag-=(9-b[i]);
        ans++;
    }
    printf("%d\n",ans);

}
全部评论

相关推荐

程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务