计蒜客 函数规律

本文介绍了一个简单函数f(x),该函数用于计算输入数字x的十进制表示中包含的圈圈数量。通过将输入值视为字符串并检查每个字符来实现。提供了一个C语言示例代码,演示如何计算特定数值的圈圈数。

下面我将描述一个简单的函数:

f(8)=2

f(16)=1

f(32)=0

f(2048)=3

读入一个x(1≤x≤101000),请你找出f(x)的值。

输入包括一行,仅一个数字x。

输出包括一行,仅一个数字f(x)。

提示:

f(0)=1, f(1)=0, f(2)=0, f(3)=0, f(4)=0, f(5)=0, f(6)=1, f(7)=0, f(8)=2, f(9)=1

有时候看数据猜题意也是很重要的技能,如果你看到这里还不知道题意的话,那么我来告诉你,f(x)表示x的十进制表示中有多少个圈圈。

 

样例输入
2048
样例输出
3

分析:很简单,将输入的数当做字符串,判断每一位有多少个圈。加起来。
 1 #include <stdio.h>
 2 #include <string.h>
 3 int main(){
 4     int num[] = {1, 0, 0, 0, 0, 0, 1, 0, 2, 1};
 5     char s[1001];
 6     int len, i, ans = 0;
 7     scanf("%s", s);
 8     len = strlen(s);
 9     for(i = 0; i < len; i++){
10         ans += num[s[i] - '0'];
11     }
12     printf("%d", ans);
13     return 0;
14 }

 

 

转载于:https://www.cnblogs.com/qinduanyinghua/p/5824126.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值