码迷,mamicode.com
首页 > 其他好文 > 详细

TSOJ--pow(a,b) [ 数据加强版 ]

时间:2018-08-26 11:51:44      阅读:366      评论:0      收藏:0      [点我收藏+]

标签:就是   提取   ane   space   soj   描述   span   names   有关   

题目描述

22 的 4 次方的运算结果为 234256,结果的个位数为 6

现请问 a 的 b 次方的运算结果的个位数是多少?

输入描述

有多组测试数据,每组测试数据在一行上

在每组数据中,有以 pow(a,b) 的形式呈现的一个正整数 a 和另一个非负整数 b ( a 与 b 都不超过 2,147,483,647 )

输出描述

a 的 b 次方的运算结果的个位数

输入样例

pow(2,3)

pow(22,4)

pow(2147483646,2147483646)

输出样例

8

6

6

题解: 本题一看就是要用到字符串的处理,将输入作为字符串输入进去,然后开始提取数字,本来想使用atoi函数但是还是有局限性

   只能依靠数组进行处理,这题数据加强版只能找一个巧妙地方法,我是用打表的方式,下面就附上我的代码

    说明一下这中幂运算的个位数的最后数值只与之前个位数以及次方有关所以我只先写出这种规律然后找到就好了

 

代码:

 

 1 #include<iostream>
 2 #include<cmath>
 3 #include<cstring>
 4 using namespace std;
 5 int num[10][10]={{0,0,0,0,0,0,0,0,0,0},{1,1,1,1,1,1,1,1,1,1},{2,4,8,6,2,4,8,6,2,4},
 6 {3,9,7,1,3,9,7,1,3,9},{4,6,4,6,4,6,4,6,4,6},{5,5,5,5,5,5,5,5,5,5},
 7 {6,6,6,6,6,6,6,6,6,6},{7,9,3,1,7,9,3,1,7,9},{8,4,2,6,8,4,2,6,8,4},{9,1,9,1,9,1,9,1,9,1}};
 8 int main()
 9 {
10     long long result;
11     long long a;
12     long long b;
13     int n;
14     string arr;
15     int k,t;
16     int brr[40];
17     while(cin>>arr){
18         memset(brr,0,sizeof(brr));
19         for(int i=0;i<arr.size();i++)
20         {
21             if(arr[i]>=0&&arr[i]<=9){
22                 brr[i]=arr[i]-0;
23                 t=i;
24             }
25             
26             if(arr[i]==,){
27                 k=i;    
28             }
29             
30         }
31         a=0;b=0;
32         for(int j=4;j<k;j++)
33         {
34             a+=brr[j];
35             a*=10;
36         }
37         a/=10;
38         for(int j=k+1;j<=t;j++)
39         {
40             b+=brr[j];
41             b*=10;
42         }
43         b/=10;
44         int x1=a%10;
45         int x2=(b%10)-1;
46         if(x2<0)
47         cout<<num[x1][10]<<endl;
48         else
49         cout<<num[x1][x2]<<endl;
50     }
51     return 0;
52 }

 

 

 

TSOJ--pow(a,b) [ 数据加强版 ]

标签:就是   提取   ane   space   soj   描述   span   names   有关   

原文地址:https://www.cnblogs.com/acmblog/p/9536321.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!