swustoj(0303取模)

el/2024/7/24 2:02:30

给你三个数X(1<=X<=10^100)、Y(1<=Y<=10^8)、Z(1<=Z<=10^4),你能计算出X^Y%Z的值吗?

Input

输出X^Y%Z的值。

Output
1
2
3
4
2 3 5
12345 2345 345
123456789123456789 19234321 2341
Sample Input
1
2
3
4
3
240
1825
Sample Output

X^Y表示X的Y次方

/*同余定理:
(a+b)mod m=((a mod m)+(b mod m))mod m;
a*b mod m=(a mod m)*(b mod m) mod m;
a^b mod m=(a mod m)^b mod m;*/#include<stdio.h>
#include<iostream>
#include<string.h>
#include<algorithm>
using namespace std;int main()
{char num[200];long int i, temp;unsigned long int n, m, ans;int len;while (cin >> num >> n >> m)//(num^n)%m的值{len = strlen(num);i = 0;temp = 0;while (i < len){while (i < len&&temp < 9999999){temp = 10 * temp + num[i] - '0';i++;}temp %= m;}ans = 1;while (n > 0){if (n & 1)//按位运算{ans = (ans*temp) % m;}temp = (temp*temp) % m;n >>= 1;//数据右移一位}cout << ans << endl;}return 0;
}




http://www.ngui.cc/el/4999740.html

相关文章

swusoj(将军鬼上身啦!(0324))

#include<stdio.h> #include<iostream> #include<string.h> #include<math.h> #include<algorithm> using namespace std;int fina, n, st;//终点&#xff0c;步数&#xff0c;起点 int ans;int main() {while (cin >> fina >> n &g…

11 And 11!(0259)

11&#xff0e;11这天&#xff0c;lgw1860依然是1111&#xff0c;大三的他今天打算摆脱光棍生活(简称“脱光”)。于是他鼓足勇气&#xff0c;对已经暗恋已久的MM告白。但MM为了考查lgw1860的聪明指数&#xff08;MM都喜欢聪明的帅哥&#xff09;&#xff0c;想出了一个猜数字游…

swustoj似曾相识(0314)

你是否有这样的感觉&#xff1a;看到某一个场景时觉得好像以前经历过&#xff0c;没错&#xff0c;这就是似曾相识。 现在就在程序中找到这种感觉吧&#xff01; Description 第一行&#xff1a;一字符串&#xff0c;长度L(3< L <8) 第二行&#xff1a;要检查的字符串段数…

swustoj木材加工(0436)

木材厂有一些原木&#xff0c;现在想把这些原木切割成一些长度相同的小段木头&#xff08;并不是所有原木都一定要用完&#xff0c;可以有剩余&#xff09;&#xff0c;需要得到的小段的数目是给定的。当然&#xff0c;我们希望得到的小段越长越好&#xff0c;你的任务是计算能…

swustoj字符串查找(0448)

在一段句子中找出给定字符串出现在句子中第一个字母出现的位置。 句子中字符个数小于4500。 字符串字符个数小于120。 Description 两行 第一行是给定字符串 第二行是句子 Input 整数&#xff0c;字符串出现的位置 Output 1 2 abcde this is a Example of abcde! Sample Input …

swustoj大整数乘法(0447)

在一些应用中&#xff0c;特别是现在的密码学中&#xff0c;常常需要用超过100位的整数来做乘法&#xff0c;以此来对数据加密。 现在有两个小于等于100位的大整数a和b&#xff08;位数相同&#xff09;&#xff0c;请写程序计算出这两个大整数乘积的结果。 Description 输入有…

swustoj大整数加法(0434)

写程序求两个大整数&#xff08;100位以上&#xff09;的和。 Description 两个大整数的位数&#xff0c;小于3000 两个大整数 Input 两个大整数的和 Output 1 2 3 20 20 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 Sample Input 1 888…

swustoj采药(0150)

辰辰是个天资聪颖的孩子&#xff0c;他的梦想是成为世界上最伟大的医师。为此&#xff0c;他想拜附近最有威望的医师为师。医师为了判断他的资质&#xff0c;给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说&#xff1a;“孩子&#xff0c;这个山洞里有一些不同…

Task Scheduling(0071)

一个单位时间任务是恰好需要一个单位时间完成的任务。给定一个单位时间任务的有限集S。关于S 的一个时间表用于描述S 中单位时间任务的执行次序。时间表中第1 个任务从时间0 开始执行直至时间1 结束&#xff0c;第2 个任务从时间1 开始执行至时间2 结束&#xff0c;…&#xff…

swustoj回文数(0371)

一个自然数如果把所有数字倒过来以后和原来的一样&#xff0c;那么我们称它为回文数。例如151和753357。我们可以把所有回文数从小到大排成一排&#xff1a;1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, ...注意10不是回文数&#xff0c;虽然我们可以把它写成010&#xff0c;但是在…