2011的n次方
题目:http://noi.openjudge.cn/ch0204/2991/
- 总时间限制:1000ms 内存限制: 65536kB
- 描述
- 已知长度最大为200位的正整数n,请求出2011^n的后四位。
- 输入
- 第一行为一个正整数k,代表有k组数据,k<=200接下来的k行,
每行都有一个正整数n,n的位数<=200
- 输出
- 每一个n的结果为一个整数占一行,若不足4位,去除高位多余的0
- 样例输入
-
3
5
28
792 - 样例输出
-
1051
81
5521
参考:
利用循环节:http://m.blog.csdn.net/u013675643/article/details/51820648
高精度除法:http://blog.csdn.net/qq_35479641/article/details/51810945
下面的思路参照循环节的做法。
题目只需要输出后四位,因此答案必然有一个最多5位数的循环节。于是可以先写个暴力去找循环节,发现循环节长度为500,这个数就很好处理了。后面读入n时只保留后三位数,再mod500就得出答案了,比写高精度简单多了~
#include<stdio.h>
#include<string.h>
// m^n % k
long long quickpow(long long m,long long n,long long k)
{
long long ans = ;
while (n > )
{
if (n & )
ans = (ans*m)%k;
n = n >> ;
m = (m*m)%k;
}
return ans;
}
int main(int argc, char *argv[])
{
int k;
int i;
char n[];
int N,len;
scanf("%d",&k);
for(i=;i<k;i++)
{
scanf("%s",n);getchar();
N=;
len=strlen(n);
N=n[len-]-'';
if(len>=) N=(n[len-]-'')*+N;
if(len>=) N=(n[len-]-'')*+N;
if(len>=) N=(n[len-]-'')*+N;
N=N%;
printf("%lld\n",quickpow(,N,));
}
return ;
}
暴力寻找循环节的一个简单操作:
#include <stdio.h> long long quickpow(long long m,long long n,long long k)//返回m^n % k的结果
{
long long ans = ;
while (n > )
{
if (n & )
ans = (ans*m)%k;
n = n >> ;
m = (m*m)%k;
}
return ans;
}
int main(int argc, char *argv[])
{
freopen("data.txt","w",stdout);
int A[],B[];
for(int i=;i<;i++)
{
//printf("%d\n",quickpow(2011,i,10000));
A[i]=quickpow(,i,);
} for(int i=;i<;i++)
{
for(int j=i+;j<;j++)
{
if(A[i]==A[j]) { B[i]=j;break; }
}
}
for(int i=;i<;i++)
{
printf("%d %d\n",A[i],B[i]);
}
return ;
}
还有一个数学论证:http://blog.csdn.net/li744831579/article/details/8784547

2011的n次方的更多相关文章
- 2991:2011 求2011^n的后四位。
2991:2011 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 已知长度最大为200位的正整数n,请求出2011^n的后四位. 输入 第一行为一个正整数k ...
- Image Processing and Analysis_8_Edge Detection:Edge and line oriented contour detection State of the art ——2011
此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...
- NOI2.4 2011
描述 已知长度最大为200位的正整数n,请求出2011^n的后四位. 输入 第一行为一个正整数k,代表有k组数据,k<=200接下来的k行, 每行都有一个正整数n,n的位数<=200 输出 ...
- [C#项目开源] MongoDB 可视化管理工具 (2011年10月-至今)
正文 该项目从2011年10月开始开发,知道现在已经有整整5年了.MongoDB也从一开始的大红大紫到现在趋于平淡. MongoCola这个工具在一开始定位的时候只是一个Windows版本的工具,期间 ...
- BZOJ 2440: [中山市选2011]完全平方数 [容斥原理 莫比乌斯函数]
2440: [中山市选2011]完全平方数 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 3028 Solved: 1460[Submit][Sta ...
- [LeetCode] Super Pow 超级次方
Your task is to calculate ab mod 1337 where a is a positive integer and b is an extremely large posi ...
- [LeetCode] Power of Four 判断4的次方数
Given an integer (signed 32 bits), write a function to check whether it is a power of 4. Example: Gi ...
- [LeetCode] Power of Three 判断3的次方数
Given an integer, write a function to determine if it is a power of three. Follow up:Could you do it ...
- [LeetCode] Power of Two 判断2的次方数
Given an integer, write a function to determine if it is a power of two. Hint: Could you solve it in ...
随机推荐
- 【已解决】Android微信开放平台,申请移动应用的 应用签名 如何获取
在微信开放平台,申请移动应用的时候: https://open.weixin.qq.com/cgi-bin/appcreate?t=manage/createMobile&type=app&a ...
- 【转】Linux防火墙(iptables)之黑名单
原文:https://www.jianshu.com/p/b221b790cb1e https://linux-audit.com/blocking-ip-addresses-in-linux-wit ...
- Windows 增强版任务管理器-Process Explorer
百度百科PROCESS EXPLORER介绍 由Sysinternals开发的Windows系统和应用程序监视工具,目前已并入微软旗下.不仅结合了Filemon(文件监视器)和Regmon(注册表监视 ...
- Is there anyway to discover which ip addresses are connected to the db?
From mongo shell run db.currentOp() to show all active connections or db.currentOp(true) to show all ...
- VC++ MFC应用程序项目文件
<?xml version="1.0" encoding="utf-8"?> <Project DefaultTargets="Bu ...
- [Docker] Getting Started with Container Networks
It is possible to group containers into a network and we can create multi networks so that container ...
- 解决webstorm本地IP访问页面出错的问题,webstorm支持IP访问
想在手机端访问webstorm做出的页面,遇到了根据IP地址访问页面错误的问题,试了网上的方法:“设置webstorm可以被外部连接访问”,依旧不能解决 解决方法: 在webstorm下:ctrl+a ...
- ListView显示不同布局
在使用不同布局的时候,getItemViewType和getViewType不能少,通常是不用这两个函数的重载的 listView.setAdapter(new BaseAdapter() { @Ov ...
- C#.NET常见问题(FAQ)-如何不显示窗口的关闭按钮
如果把ControlBox设置为false,则右上角三个按钮都看不到了 最好的方法是重写窗体的CreateParams方法,如下图所示 更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间 ...
- springboot升级到2.0后context-path配置不起作用
springboot升级到2.0后,context-path配置不起作用,改成了: server.servlet.context-path=/projname