博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
L1-017. 到底有多二
阅读量:5745 次
发布时间:2019-06-18

本文共 816 字,大约阅读时间需要 2 分钟。

L1-017. 到底有多二

时间限制
400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
陈越
一个整数“犯二的程度”定义为该数字中包含2的个数与其位数的比值。如果这个数是负数,则程度增加0.5倍;如果还是个偶数,则再增加1倍。例如数字“-13142223336”是个11位数,其中有3个2,并且是负数,也是偶数,则它的犯二程度计算为:3/11*1.5*2*100%,约为81.82%。本题就请你计算一个给定整数到底有多二。

输入格式:

输入第一行给出一个不超过50位的整数N。

输出格式:

在一行中输出N犯二的程度,保留小数点后两位。

输入样例:

-13142223336
输出样例:
81.82%

分析:

一开始感觉条件太多 有些乱 但一步一步解决问题就简单很多了

#include 
using namespace std;int main(){ string s; cin >> s; int flag = (s[0] == '-' ? 1 : 0); int len = s.length(); int count = 0; for(int i = 0; i < len; i++) { if(s[i] == '2') count++; } double ans = count*1.0/(len-flag)*100; if(flag == 1) { //负数增加0.5倍 ans *= 1.5; } if( (s[len-1] - '0') % 2 == 0 ){ //偶数增加1倍 ans *= 2; } printf("%.2f%c",ans,'%'); return 0;}

转载地址:http://kwszx.baihongyu.com/

你可能感兴趣的文章
Ubuntu 16.04 grub rescue 模式下修复 grub
查看>>
hadoop集群ambari搭建(2)之制作hadoop本地源
查看>>
[poj 2331] Water pipe ID A*迭代加深搜索(dfs)
查看>>
HDU 4514并查集判环+最长路
查看>>
FreeRTOS 低功耗之待机模式
查看>>
Mac 安装配置Mysql
查看>>
新西兰天维网登录发送明文password
查看>>
ajax做省市联动
查看>>
2017"百度之星"程序设计大赛 - 复赛1005&&HDU 6148 Valley Numer【数位dp】
查看>>
Ubuntu 16.04安装基于nethogs衍生的网络监控软件(应用实时网速监控)
查看>>
OpenCV探索之路(二十三):特征检测和特征匹配方法汇总
查看>>
Spring MVC 4.2 CORS 跨域访问
查看>>
JsonArray和JsonObject遍历方法
查看>>
关于Unity中NGUI的帧动画和Tween动画
查看>>
C语言中的数据类型
查看>>
英伟达硬件加速编解码
查看>>
Linux下sh文件运行及桌面环境双击运行sh文件
查看>>
Ehcache缓存配置
查看>>
Spring MVC-视图解析器(View Resolverr)-内部资源视图解析器(Internal Resource View Resolver)示例(转载实践)...
查看>>
mysql 中 unix_timestamp和from_unixtime函数
查看>>