最新消息:680元/半年,推荐全网最具性价比的一站式编程学习平台码丁实验室

信息学奥赛题库- 【例 6】计算器

C++ 少儿编程 1188浏览 0评论

友情提示:680元/半年,儿童学编程,就上码丁实验室

【题目描述】

原题来自:SDOI 2011

你被要求设计一个计算器完成以下三项任务:

1、给定 $y,z,p$,计算 $y^zbmod p$ 的值;

2、给定 $y,z,p$,计算满足 $x × yequiv z;(bmod p )$ 的最小非负整数 $x$;

3、给定 $y,z,p$,计算满足 $y^xequiv z;(bmod p;)$ 的最小非负整数 $x$。

【输入】

输入包含多组数据。

第一行包含两个正整数 $T,K$ 分别表示数据组数和询问类型(对于一个测试点内的所有数据,询问类型相同);

以下 $T$ 行每行包含三个正整数 $y,z,p$,描述一个询问。

【输出】

对于每个询问,输出一行答案。

对于询问类型 $2$ 和 $3$,如果不存在满足条件的,则输出 $Orz,;I;cannot;find;x!$,注意逗号与 $I$ 之间有一个空格。

【输入样例】

3 1
2 1 3
2 2 3
2 3 3

【输出样例】

2
1
2

【提示】

样例输入 2

3 2
2 1 3
2 2 3
2 3 3

样例输出 2

2
1
0

数据范围与提示:

对于全部数据,$1le y,z,ple 10^9,1le Tle 10$,且保证 $p$ 为质数。

您必须 登录 才能发表评论!