CSDN 厦门大学线下编程比赛第一题:求和(同余定理)
题目意思:
给定a和n,计算a+aa+aaa+aaaa+...+a...a(n个a) 的和。
输入描写叙述:測试数据有多组,以文件结尾。每行输入a,n(1<=a,n<=1000000)。
输出描写叙述:因为结果可能比較大,所以请输出答案mod 1000000007。
http://student.csdn.net/mcs/programming_challenges
题目分析:
同余定理:
s=0;
abc&MOD=((a*10%MOD+b%MOD)*10%MOD+c%MOD)%MOD:
//迭代形式
s=(s*10%MOD+a%MOD)%MOD
s=(s*10%MOD+b%MOD)%MOD
s=(s*10%MOD+c%MOD)%MOD
abc%MOD=s:
此题须要注意的是,链接的a可能不是一位数,一次须要将a写入字符串(同余)进行操作,见代码凝视。
AC代码:
<span style="font-size:18px;">/**
*同于定理,须要注意每一次链接的a不一定是一位数
*比如输入100 3
*1、s=0; s1[3]="100";(a写入字符串)
*2、s=(s*10%MOD+(s1[j]-'0'))%MOD;
*3、下一次链接下一个数,仅仅须要用s继续链接a就可以
*4、每一次用sum+=s;
*/
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#define MOD 1000000007
using namespace std;
int main()
{
int a,n;
while(cin>>a>>n){
char s1[10];
sprintf(s1,"%d",a);//将a写入字符串以便于进行逐个取余,(用同余定理)
int len=strlen(s1);
long long sum=0,s=0;
for(int i=0;i<n;i++){
for(int j=0;j<strlen(s1);j++){//每次将数字a分成为每一位取余与上一个数链接
s=(s*10%MOD+(s1[j]-'0'))%MOD;
}
sum=(sum%MOD+s%MOD)%MOD;
//printf("%s\n",s2);
}
cout<<sum<<endl;
}
return 0;
}
</span>
CSDN 厦门大学线下编程比赛第一题:求和(同余定理)的更多相关文章
- CSDN 四川大学线下编程比赛第一题:数字填充
题目意思: http://student.csdn.net/mcs/programming_challenges peter喜欢玩数字游戏,但数独这种游戏对他来说太简单了,于是他准备玩一个难的游戏. ...
- CSDN 四川大学线下编程比赛第二题:Peter的X
题目详情: http://student.csdn.net/mcs/programming_challenges Peter是个小男孩.他总是背不清26个英文字母. 于是,刁钻的英语老师给他布置了一个 ...
- CSDN挑战编程——《金色十月线上编程比赛第二题:解密》
金色十月线上编程比赛第二题:解密 题目详情: 小强是一名学生, 同一时候他也是一个黑客. 考试结束后不久.他吃惊的发现自己的高等数学科目竟然挂了,于是他果断入侵了学校教务部站点. 在入侵的过程中.他发 ...
- [py]letcode第一题求和
letcode第一题, tm的不好弄. 想了很久想到了一个粗蠢的解决办法. Given an array of integers, return indices of the two numbers ...
- 代码审计-四叶草杯线下awd比赛源码web2
今晚简单来看看那天比赛的源码吧,比赛的时候还是有些慌没有好好去静下心看代码. awd给的题中的漏洞,都是那种可以快速让你利用拿到权限后得到flag的那种,特别复杂利用的一般没有. 建议先黑盒去尝试,例 ...
- JAVA编程思想第一题出现错误
//: object/E01_DefaultInitialization.java public class E01_DefaultInitialization{ int i ; char c ; p ...
- 【科创人·独家】MegaEase左耳朵耗子陈皓复盘创业:第一年盈利被当骗子,线下广阔天地大有可为
[科创人·独家]MegaEase左耳朵耗子陈皓复盘创业:第一年盈利被当骗子,线下广阔天地大有可为 原创: babayage CTO科创圈 与上百位科技创业者共同关注科创人的成长心路. 文末有彩蛋:& ...
- [ X.XX]CF每日一题系列线下更新中
现在做的都好水啊,就不写博客了,线下有记录滴
- 由于空间,注定的结果——第五届山东省ACM编程比赛总结
应该是,这是一个很失败的结果.目前省赛玩具.作为志愿者说,,铁匠是一个很丢人的事. 作为队长.全然没有想到会是这种一次旅程.尽管由于去baidu的实习和各种offer的申请,对acm抱着能水就水绝不深 ...
随机推荐
- 校内测之zay与银临 (day2)(只有T1)
一些与题目无关的碎碎念 推出式子来一定要化简!!!freopen不要写错!!!特判不要瞎搞!!!! 做到以上三点能高35分qwq T1 江城唱晚 你看数据那么大,显然又是一道数学题. 这里有n个种海棠 ...
- python json格式和csv文件转换
python json格式和csv文件转换 上代码 import csv import json ''' json格式示例 [{ "firstName":"Bill&qu ...
- Bullet:ORACLE Using SQL Plan Management(一)
SQL Plan Management如何工作? 当一个SQL硬解析时,基于成本的优化器CBO会生成多个执行计划,并从这些执行计划中选择一个优化器认为最低成本的执行计划. 如果SQL plan bas ...
- 洛谷——P3389 【模板】高斯消元法
P3389 [模板]高斯消元法 以下内容都可省略,直接转大佬博客%%% 高斯消元总结 只会背板子的蒟蒻,高斯消元是什么,不知道诶,看到大佬们都会了这个水题,蒟蒻只好也来切一切 高斯消元最大用途就是解多 ...
- HDU_5783_DivideTheSequence
HDU_5783_DivideTheSequence 点击打开链接 题意: 生成尽量多的连续的子串,且子串的前缀和大于等于0,输出符合题意的子串的数量. 这题目是参加四月份的个人训练赛遇到的,挺水的 ...
- 本地搭建easy-mock
easy-mock要用nodejs启动,需要先安装nodejs ubuntu系统: apt install node centos系统: curl --silent --location https: ...
- buf.readIntBE()
buf.readIntBE(offset, byteLength[, noAssert]) buf.readIntLE(offset, byteLength[, noAssert]) offset { ...
- Python的/整除
在python3和python2里,正整数的/结果是一样的,但是负数的整除却有区别 比如python3中,-1/2是等于0的,c/c++的结果也是这样, 但在python2中,-1/2确是-1,想要得 ...
- python3 的 zip
准备放弃生命中这4个小时,然后翻开了python,人生苦短,音乐和python才味甘 1. zip 可以看到zip两个列表,返回一个元组的列表,但是它是个可迭代的对象,得用list才能调用显示: 2 ...
- 转来的——python webdriver自动化测试初步印象——转来的
python webdriver自动化测试初步印象 以下示例演示启动firefox,浏览google.com,搜索Cheese,等待搜索结果,然后打印出搜索结果页的标题 from selenium i ...