返回

CodeForces 779B Weird Rounding

发布时间:2022-11-28 22:09:14 265

题目链接:​​http://codeforces.com/contest/779/problem/B​​​
题意:给你一个数s,再给你一个整数k,为你最少删除s的几位数使得s能够整除10^k
解析:分两种情况,如果s的零的个数小于k,那么直接输出len(s)-1,否则从s的后面往前扫,维护一下答案即可

#include 
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
const int maxn = 1e5+100;
char a[1000];
int main()
{
int k;
scanf("%s %d",a,&k);
int len = strlen(a);
int tmp = 0;
for(int i=0;i<len;i++)
{
if(a[i]=='0')
tmp++;
}
if(tmp<k)
printf("%d\n",len-1);
else
{
int tt = 0;
for(int i=len-1;i>=0;i--)
{
if(a[i]!='0')
tt++;
if(a[i]=='0')
k--;
if(k==0)
break;
}
printf("%d\n",tt);
}
return 0;
}

 

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
CodeForces 779C Dishonest Sellers 2022-11-28 21:46:28