https://codeforces.com/contest/1544/problem/A
水题

INPUT
3
121
5
1000000000
OUTPUT
2
5
1

题意:
给T, T组数据,每组数据给出一个数,求用最少个仅有01构成的数的个数
例如:
405 = 101 + 101 + 101 + 101 + 1;
解法:
就输出 数 每位上最大的数就好,例如405即输出5,我用字符串存储的,找最大数的时候方便。
#include<bits/stdc++.h>
using namespace std;
void solve()
{
char a[15];
int maxx = 0;
scanf("%s",a);
int len = strlen(a);
for(int i = 0;i<len;i++)
{
int x = a[i] - '0';
if(x > maxx)
maxx = x;
}
cout<<maxx<<endl;
}
int main()
{
int T;
cin>>T;
while(T--)
{
solve();
}
}
如有问题请指正
这篇博客介绍了解决编程竞赛中的一个问题,如何用最少的01构成的数来表示给定整数,只需找出每个数的最大位数。博主分享了使用C++代码实现的方法,并通过示例解释了如何找到输入数字中每位上的最大数。
667

被折叠的 条评论
为什么被折叠?



