UVa 11344 The Huge One (模性质)

原创 2013年12月05日 10:30:10

http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=show_problem&problem=2319

简单点的方法:由于a*10%m=((a%m)*10)%m,所以一个数一个数挨个取模判断即可。


复杂点的方法:

1. 1不用判断。

2. 若一个整数的未尾三位数能被8整除,则这个数能被8整除。

若一个整数的末尾两位数能被4整除,则这个数能被4整除。 

若一个整数的个位能被2整除,则这个数能被2整除。

3. 若一个整数的数字和能被9整除,则这个整数能被9整除。 

若一个整数的数字和能被3整除,则这个整数能被3整除。

4. 若一个整数能被2和3整除,则这个数能被6整除。

若一个整数能被3和4整除,则这个数能被12整除。 

5. 若一个整数的末位是0,则这个数能被10整除。

若一个整数的末位是0或5,则这个数能被5整除。

6. 判定被7、11整除的简易方法(但此方法还不如上面的取模快)

7. 简化判断次数:

若8ok,则4,2ok;

若9ok,则3ok;

若2,3ok,则6ok;

若3,4ok,则12ok;

若10ok,则5ok。


完整代码:

/*0.022s*/

#include<cstdio>
#include<cstring>

char s[1005];
int a[15];

int main()
{
	int t, len, n, i, j, rem;
	bool f;
	scanf("%d", &t);
	while (t--)
	{
	    getchar();
		gets(s);
		len = strlen(s);
		scanf("%d", &n);
		for (i = 0; i < n; ++i)
			scanf("%d", &a[i]);
		f = false;
		for (i = 0; i < n; ++i)
		{
			rem = 0;///remainder
			for (j = 0; j < len; ++j)
				rem = (rem * 10 + (s[j] & 15)) % a[i];
			if (rem)
			{
				f = true;
				break;
			}
		}
		if (f) printf("%s - Simple.\n", s);
		else printf("%s - Wonderful.\n", s);
	}
	return 0;
}

UVa 10692 Huge Mods (指数循环节)

UVa 10692 Huge Mods题目大意:给出模数mm和正整数a1,a2...an,a_1,a_2...a_n,求出aa...an21 mod ma_1^{a_2^{...^a_n}}\ mod...
  • The_useless
  • The_useless
  • 2016年12月28日 11:38
  • 156

uva 10692 - Huge Mods(数论)

题目链接:uva 10692 - Huge Mods 题目大意:给出一个数的次方形式,就它模掉M的值。 解题思路:根据剩余系的性质,最后一定是行成周期的,所以就有ab=abmod(phi[...
  • u011328934
  • u011328934
  • 2014年07月02日 19:49
  • 995

uva 10692——Huge Mods

题目大意:给定第一个数M,后面有n的数,求解a[1]^a[2]^a[3]^…..%m的解   思路:开始的时候并不知道从哪里下手,一开始收到前面某题除4的印象,然后一直对4取余,知道a[1],计算...
  • bobodem
  • bobodem
  • 2015年10月26日 17:08
  • 422

UVa10692 Huge Mods

1.题目描述:点击打开链接 2.解题思路:本题利用欧拉定理解决。根据题意,我们需要递归地计算每一个取模后的指数,然后再进行快速幂得到最终的答案。由欧拉定理知,我们只需要计算指数模phi(MOD)的结果...
  • u014800748
  • u014800748
  • 2015年10月19日 16:17
  • 495

UVA 10692 - Huge Mods(数论)

UVA 10692 - Huge Mods 题目链接 题意:求a0a1a2...mod m 思路:直接算肯定不行,利用欧拉定理ab=a(b mod phi(m) + phi(m))(...
  • u011217342
  • u011217342
  • 2014年06月26日 10:34
  • 1581

Huge Mods-UVA - 10692

题意:多次幂大数求余-递归调用欧拉公式和递增快速幂AC代码;#include &lt;iostream&gt; #include &lt;cmath&gt; usin...
  • qq_40780973
  • qq_40780973
  • 2018年02月14日 23:07
  • 7

UVA10692:Huge Mods

题面 传送门 题意 输入正整数a1,a2,a3..an和模m,求a1^a2^…^an mod m Sol 首先有ab≡⎧⎩⎨⎪⎪ab%ϕ(p)           gcd(a,p)=1a...
  • oi_Konnyaku
  • oi_Konnyaku
  • 2018年01月19日 20:23
  • 52

UVa 11344 - The Huge One

题目:计算一个大整数是否被一个集合中的所有正整数整除(范围:1-12)。 分析:模拟,大整数。直接按位模拟除法,判断余数即可。 说明:(⊙v⊙)。 #include #include #in...
  • mobius_strip
  • mobius_strip
  • 2017年06月19日 15:21
  • 347

模运算与同余公式的性质

所谓的同余,顾名思义,就是许多的数被一个数d去除,有相同的余数。d数学上的称谓为模。如a=6,b=1,d=5,则我们说a和b是模d同余的。因为他们都有相同的余数1。        数学上的记法为:  ...
  • a359680405
  • a359680405
  • 2014年12月02日 10:17
  • 4052

UVA - 10692 Huge Mods (欧拉函数)

Problem X Huge Mod Input: standard input Output: standard output Time Limit: 1 second The operator f...
  • u011345136
  • u011345136
  • 2014年08月25日 11:02
  • 957
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UVa 11344 The Huge One (模性质)
举报原因:
原因补充:

(最多只允许输入30个字)