HDU 1061(快速幂取模)
来源:互联网 发布:telnet端口退出 编辑:程序博客网 时间:2024/05/16 10:15
题意:求N^N最右端的数。
快速幂递归:
#include<iostream>using namespace std;int t,n;int f(int m,int n){ int ans; if(n==1) return m%10; if(n%2==0) { ans=f(m,n/2) ;return ((ans%10)*(ans%10))%10;} else { ans=f(m,n/2); return ((ans%10)*(ans%10)*(m%10))%10;}}int main(){ cin>>t; while(t--) { cin>>n; int m=n; cout<<f(m,n)<<endl; } return 0;}
快速幂非递归:
#include <iostream>using namespace std;int rmd(int a, int b){a = a%10;int reslut = 1;while (b != 0){if (b&1){reslut = (reslut*a)%10;}b = b>>1;a = (a*a)%10;}return reslut;}int main(){int N;int num;cin >> N;while (N != 0){cin >> num;cout << rmd(num, num) << endl;--N;}return 0;}
找规律:
#include<stdio.h>int main(){ int num[21]={0,1,4,7,6,5,6,3,6,9,0,1,6,3,6,5,6,7,4,9,0}; int n; int num2; while(scanf("%d",&n)>0) { for(int i=0;i<n;i++) { scanf("%d",&num2); printf("%d\n",num[num2%20]); } } return 0;}
0 0
- HDU 1061(快速幂取模)
- hdu 1061 快速幂取模!!!!!
- hdu 1061 快速幂取模
- HDU 1061 快速幂取模
- 【快速幂取模】HDU 1061---Rightmost Digit
- HDU - 1061 - Rightmost Digit (快速幂取模!)
- HDU 1061 Rightmost Digit【快速幂取模】
- hdu 1061 Rightmost Digit 快速幂取模
- HDU 1061 Rightmost Digit(快速幂取模)
- hdu 3003 快速幂取模
- hdu 1905 快速幂取模
- HDU 2035 快速幂取模
- HDU 1097 快速幂取模
- 快速幂 hdu 1061
- HDU 1061 快速幂
- hdu-1097快速幂取模运算
- hdu 1601(快速幂取模)
- HDU 1061 快速幂算法
- 如何修改tomcat7的端口和用户名密码?
- Platform Builder实践之文件系统(by fllsoft)
- Platform Builder实践之文件系统(by fllsoft)
- 33 Android 获取版本等信息
- vs2013下配置jrtplib
- HDU 1061(快速幂取模)
- jquery: Uncaught TypeError: Object [object Object] has no method 'live'
- Platform Builder实践之拾遗补缺(by fllsoft)
- 控制台界面控制(四)
- c# 编程添加控件
- 破解Kingdom Rush:Frontiers
- Platform Builder实践之配置文件(by fllsoft)
- UVA LA 4670(AC自动机)
- Android源代码仓库及其管理工具Repo分析