描述

对于任意的两个非负整数a,b(0<=a,b<10000),请计算a^b各位数字的和的各位数字的和……

输入

输入两个非负整数a,b(0<=a,b<10000),注意哦,输入可是多组哦!还有就是最后一组a=0,b=0表示输入结束,不需要处理哦!

输出

对于每组输入的数据,请计算a^b各位数字的和的各位数字的和……

样例输入

2 3
5 7
0 0

样例输出

8
5

提示

注意输入数据的范围和最后结果的范围哦!

题目来源

qingyezhu

题目上传者

qingyezhu

刚看到这题就想把1033里的直接拿过来用,结果WA发现并不是一样的题。。然后第一次↓

 #include<stdio.h>
 int main()
 {
     int a,b,i,j,site,ret,sum;
     while(scanf("%d %d",&a,&b)!=EOF)
     {
         &&b==)
         {
             break;
         }
         ]= {};
         site=;
         ;i<=b;i++)
         {
             ;j<=site;j++) temp[j]*=a;
             ;j<=site;j++)
             {
                 temp[j+]+=temp[j]/;
                 temp[j]%=;
                 ||temp[site+]>) ++site;
             }
         }
         ret = ;
         sum = ;
         while(site--) ret+=temp[site];
         ||sum/!=)
         {
             sum+=ret%;
             ret/=;
             &&sum/!=)
             {
                 ret = sum;
                 sum = ;
             }
         }
         printf("%d\n",sum);
     }
     ;
 }

超时。

果然ACM这种东西要先学习才行,这时候果断google

assume a1,a2...an ,then
  (a1a2...an)%9=(a1+a2+...+an)%9
  prove:
     make s=a1a2...an=a1*10^(n-1)+a2*10^(n-2)+...+an
                  =a1*(999..9+1)+a2*(99..9+1)+...+a(n-1)*(9+1)+an
                  =(a1*999..9+a2*999..9+...+a(n-1))+(a1+a2+...+an)
       s%9=(a1+a2+...+an)%9

一句话总结就是任何数除以9的余数都跟它各位数相加之和除以9的余数相同,递推到最后就可以得知该数的各位数之和之和之和……就是它除以9的余数(且余数为0的时候结果为9)。

又因为(a*a)%9=(a%9*a%9)%9,所以(a*a*a)%9=((a*a)%9*a%9)%9=((a%9*a%9)%9*a%9)%9,即若只使结果相同,则程序可以利用循环带入写成如下形式↓

  #include<stdio.h>

   int main()
   {
       int a,b,i,ret;
       while(scanf("%d %d",&a,&b)!=EOF)
       {
           &&b==) break;
           ,ret=;i<=b;i++) ret = (ret%)*(a%);
           ret%=;
           if(ret) printf("%d\n",ret);
          ) printf("0\n");
          else printf("9\n");
      }
      ;
  }

AC~

BJFU 1034的更多相关文章

  1. BZOJ 1034 泡泡堂BNB 贪心+简单博弈

    同样是今天做bzoj时做到的,感觉能力范围之内的就做了,也是蛮简单的 1034: [ZJOI2008]泡泡堂BNB Time Limit: 10 Sec Memory Limit: 162 MB Su ...

  2. BZOJ 1034 题解

    1034: [ZJOI2008]泡泡堂BNB Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2613  Solved: 1334[Submit][St ...

  3. 九度oj 题目1034:寻找大富翁

    题目链接:http://ac.jobdu.com/problem.php?pid=1034 题目描述:     浙江桐乡乌镇共有n个人,请找出该镇上的前m个大富翁. 输入:     输入包含多组测试用 ...

  4. 【wikioi】1034 家园(最大流+特殊的技巧)

    http://wikioi.com/problem/1034/ 太神了这题. 其实一开始我以为是费用流,但是总感觉不对. 原因是我没看到一句话,特定的时刻到达特定的点!! 也就是说,并不是每艘船每次都 ...

  5. NBOJv2 1034 Salary Inequity(DFS序+线段树区间更新区间(最值)查询)

    Problem 1034: Salary Inequity Time Limits:  10000 MS   Memory Limits:  200000 KB 64-bit interger IO ...

  6. 【BZOJ】【1034】【ZJOI2008】泡泡堂BNB

    贪心 类似田忌赛马策略的一个贪心= = 随便YY了一个做法居然A了…… 简单来说就是先强对强,弱对弱,能赢就赢,不能赢就让弱的那个去对强的那个,剩下的人继续依次捉对比赛(继续刚刚的策略),现在人数还是 ...

  7. PAT-乙级-1034. 有理数四则运算(20)

    1034. 有理数四则运算(20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 本题要求编写程序,计算2个有理 ...

  8. bzoj 1034 [ZJOI2008]泡泡堂BNB(贪心)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1034 [题意] 给两个序列以任意顺序比较,求出最大和最小得分. [思路] 排序后使用贪 ...

  9. PAT 1034. Head of a Gang (30)

    题目地址:http://pat.zju.edu.cn/contests/pat-a-practise/1034 此题考查并查集的应用,要熟悉在合并的时候存储信息: #include <iostr ...

随机推荐

  1. memcached 的安装与使用

    准备条件:下载memcached的服务器端memcached-1.2.1.win32.zip(虽然最新版本已经是1. 4.6了,但win版本的好像还一直未更新,或找不到.) A.windows上的安装 ...

  2. Equivalent Strings

    Equivalent Strings 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=84562#problem/E 题意: 给出 ...

  3. mysql 主从同步原理

    Replication 线程 Mysql的 Replication 是一个异步的复制过程,从一个 Mysql instace(我们称之为 Master)复制到另一个 Mysql instance(我们 ...

  4. QSpinBox 和 QSlider 联合使用方法

    在Qt中,有时候我们想要联合QSpinBox 和 QSlider,使得移动滑块,QSpinBox中的数据会变化,或者我们在QSpinBox中输入一个数值,响应的滑块也会变化,如下图所示:

  5. [LintCode] Decode Ways 解码方法

    A message containing letters from A-Z is being encoded to numbers using the following mapping: 'A' - ...

  6. mysqlbinglog基于即时点还原

    mysqlbinlog介绍 要想从二进制日志恢复数据,你需要知道当前二进制日志文件的路径和文件名.一般可以从选项文件(即my.cnf or my.ini,取决于你的系统)中找到路径. (mysql5. ...

  7. Git基本命令行操作

    A. 新建Git仓库,创建新文件夹git init  B. 添加文件到git索引git add <filename>  --- 单个文件添加git add * --- 全部文件添加 C. ...

  8. html5 语义

    页面示意图

  9. :nth-child(an+b)

    语法: :nth-child(an+b)为什么选择它,因为我认为,这个选择器是最多学问的一个了.很可惜,据我所测,目前能较好地支持她的只有Opera9+和Safari3+. 描述: 伪类:nth-ch ...

  10. php图片转为资源数据

    $file='C:\Users\feng\Desktop\images\banner.png';  //图片路径 $type=getimagesize($file);                 ...