栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++打卡4-宝箱密码

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++打卡4-宝箱密码

题目描述

海盗王将自己的宝藏藏在了一个宝箱里,只有一次开锁的机会,密码输错宝箱就会永久锁死。

 

小明意外的得到了这个宝箱,经过详细的研究,他发现海盗王很喜欢数字129,并且在图书馆里找到了海盗王的一段手稿,上面有一段描述:“那些除不完的数,就是我喜欢的”,然后是一大串包含数字的字符串。于是,小明大胆的猜测,从字符串中提炼所有的数字串,所有数字串对129求余,将这些余数加起来,就是宝箱的密码。

 

编写程序,输入一个字符串,提取里面所有的完整数字串,对9求余,将所有的余数累加起来输出。

 

输入输出格式

输入格式:

 

一行包含多个数字串的字符串(可能有空格)

输出格式:

 

数字串对129求余,余数相加的结果

输入输出样例

输入样例1:

Love me, love my dog, 54321and678

 

输出样例1:

45

 

样例1说明:54321%129=12, 678%129=33, 结果为45。

 

输入样例2:

hello, 00054321 , my phone is 9910。

 

输出样例2:

118

 

样例2说明:

 

54321%129=12,9910%129=106,结果为118

前面的0对结果没有用

测试点

测试点:5个测试点,每个测试点得20分。

 

测试限制:每个测试点时间限制1s,内存限制128M。

 

数据范围:

 

40%的数据,字符串里的完整数字串长度<=9位

60%的数据,字符串里的完整数字串长度<=19位

100%的数据,字符串里的完整数字串长度<=30位

代码如下:

#include

using namespace std;

string s;

int a[100],last;

bool c(char c){

    return c>='0'&&c<='9';

}

int iss(){

    int r=0;

    for(int i=1;i<=last;i++) r=(10*r+a[i])%129;

    return r;

}

int main(){

 getline(cin,s);

 int sum=0;

 for(int i=0;i

     if(!c(s[i])) continue;

     while(true){

         a[++last]=s[i]-'0';

         i++;

         if(i==s.length() || !c(s[i])) break;

     }sum+=iss();

     last=0;

 }cout<

 return 0;

}

代码供参考,拜拜!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1038128.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号