HDU 1061 Rightmost Digit

本文介绍了一种高效算法,用于求解正整数N的N次方的最右一位数字,适用于大规模数据处理。通过对末位数字的周期性规律分析,采用数组存储策略简化计算过程。

 

Problem Description
Given a positive integer N, you should output the most right digit of N^N.
 

 

Input
The input contains several test cases. The first line of the input is a single integer T which is the number of test cases. T test cases follow.
Each test case contains a single positive integer N(1<=N<=1,000,000,000).
 

 

Output
For each test case, you should output the rightmost digit of N^N.
 

 

Sample Input
2
3
4
Sample Output
7
6

 

 一道提倡和谐的找规律题目,看到数据规模就知道暴力是不可能的了。一开始我想,只去最后一位来计算便可以简化计算,但是忽略了重复那么多次依然会让你超时。所以只能通过最后一位数相乘后的结果取最后一位来找规律,其实是有周期的。如2^2=4,2^3=8,2^4=6,2^5=2,2^6=4……

最先我写得是用IF判断所有个位数的情况,结果代码冗长。参考他人的做法,可以用数组来储存,简化代码。

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值