现在的位置: 首页 > 综合 > 正文

厦门大学线下编程比赛第一题:求和

2018年01月19日 ⁄ 综合 ⁄ 共 617字 ⁄ 字号 评论关闭

厦门大学线下编程比赛第一题:求和

给定a和n,计算a+aa+aaa+aaaa+...+a...a(n个a) 的和。 
输入描述: 测试数据有多组,以文件结尾。每行输入a,n(1<=a,n<=1000000)。 
输出描述: 由于结果可能比较大,所以请输出答案mod 1000000007。

/*
给定a和n,计算a+aa+aaa+aaaa+...+a...a(n个a) 的和。 
输入描述: 测试数据有多组,以文件结尾。每行输入a,n(1<=a,n<=1000000)。 
输出描述: 由于结果可能比较大,所以请输出答案mod 1000000007。

abc&MOD=((a*10%MOD+b%MOD)*10%MOD+a%MOD)%MOD:  
*/

#include<iostream>
#include<string.h>
#include<stdio.h>
#define MOD 1000000007 
using namespace std;

int main(){
	
	int i,j,n,len;
	char a[10];
	long long  sum,s;
	while(scanf("%s%d",a,&n)!=EOF)
	{
        len=strlen(a);  
        sum=0,s=0;  
        for(i=0;i<n;i++)
		{  
            for(j=0;j<strlen(a);j++)
                s=(s*10%MOD+(a[j]-'0'))%MOD;  
            sum=(sum%MOD+s%MOD)%MOD;   
        }  
        cout<<sum<<endl;
	}
	return 0;
}

抱歉!评论已关闭.