题目大意:

给出n求sn,中括号代表向下取整。

为了方便表述,我们令a = (3k+6)!,b = (3k+7),令c = (a+1)/b也就是式子中的前半部分,d = a/b也就是式子中的后半部分。

观察c,d我们可以知道只有当c为整数时[c-[d]]为1,其他时候都是0,即只有当(a+1)%b==0时[c-[d]] == 1。

威尔逊定理告诉我们:当且仅当p为素数时:( p -1 )! ≡ -1 ( mod p )。

首先我们要介绍一个定理。

拉格朗日定理:群的子群的规模能被群的规模整除,我们在这里只拿乘法群做出证明,可以知道,一个乘法群能够分解成一些相交点只有1的乘法子群。

假设一个规模为n(即模n+1)的乘法群其可以分成m个相交点只有一的乘法子群,我们提出任意两个乘法子群,a1,a2..ax,与b1,b2..by将两子群中元素两两配对,

   b1        b2     ...       by

a1   a1*b1   a1*b2          a1*by

a2

.

.

ax      ax*b1  ax*b2     ax*by

我们可以证明在这个合成的群中,任意两个数都不相等,反证法证明如下:

设两个元素分别为ai*bj,a(i+r)*b(j+k),如果两个元素相等的话我们可以得出

ai*bj = ai*ar*b(j+k)

bj = ar*b(j+k)除非ar为1否则这与我们定义的两个循环子群是相悖的;以上证明完毕。

可以很轻易的知道所有子群合并后的群必然包括了所有群的元素,可知将所有循环子群合并后群的规模为所有子群规模的乘积,也即所有循环子群的规模能够被群的规模所整除,循环子群合并所生成的群是群的子群,规模也能够被群的规模所整除,而所有循环群的子群也可以很轻易的知道,规模能够被循环群所整除,讲所有上述子群所形成的的新群也可以很轻易地知道包括了所有的群的子群的情况,以上拉格朗日定理证明完毕。

接下来证明威尔逊定理:

由于1~p-1能够构成呢模p的乘法子群,由逆元唯一性可知,每个元素都有有零一个元素使其两两相乘结果为一,除了1和一和x^2 ≡ 1(mod q)当x = q-1的时候成立,所以威尔逊定理成立。

hdu2937的更多相关文章

  1. HDU2937 YAPTCHA(威尔逊定理)

    YAPTCHA Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

随机推荐

  1. JQUERY1.9学习笔记 之基本过滤器(三)偶数选择器

    偶数选择器 jQuery( ":even" ) 例:查询偶数个表格的行. <!DOCTYPE html><html lang="zh-cn"& ...

  2. PHP中检测ajax请求的代码例子

    多数情况下,基于JavaScript 的Js框架如jquery.Mootools.Prototype等,在发出Ajax请求指令时,都会发送额外的 HTTP_X_REQUESTED_WITH 头部信息, ...

  3. MFC自创建类了解

    CxxxxView 视窗类 所有的按键 等消息都先在这里响应 CxxxxDoc 文档类 CMainFrame 框架类 CxxxxApp 应用程序类 CxxxxView类中的 OnDraw函数 在窗口改 ...

  4. Javascript url 小逻辑

    情况1 : var xhr = new XMLHttpRequest(); xhr.open("GET", "/api/products", true); xh ...

  5. 5分钟教你学会JavaScript正则表达式

    正则表达式在实际开发过程中和技术面试过程中的重要性不言而喻,本文仅仅只是教你如何在几分钟之类学会正则表达式,对于它的原理及运行机制不做介绍. 第一:什么是正则 正则表达式是一种用来描述一定数量文本的模 ...

  6. 有意思的数学题:Trapping Rain Water

    LeetCode传送门 https://leetcode.com/problems/trapping-rain-water/ 目标:找出积木能容纳的水的“面积”,如图中黑色部分是积木,蓝色为可容纳水的 ...

  7. zookeeper[1] (转)ZooKeeper Programmer's Guide(zookeeper编程向导)---中文

    原文:http://www.cnblogs.com/Xrinehart/p/3512509.html 本文是为想要创建使用ZooKeeper协调服务优势的分布式应用的开发者准备的.本文包含理论信息和实 ...

  8. 尝鲜党:Nexus5、6刷安卓M教程

    说明: 进入recovery的命令:adb reboot recovery 进入bootloader的命令:adb reboot bootloader 概述 F:\Nexus5\AndroidM\ha ...

  9. Eclipse 4.2 + Tomcat 7.x + JDK 7 搭建Java Web开发环境

    1. 准备工具 Eclipse 4.2 (到官网下载:http://www.eclipse.org/downloads/  要下载Eclipse IDE for Java EE Developers ...

  10. VMware上实现LVS负载均衡(NAT)

    本文LVS的实现方式採用NAT模式.关于NAT的拓扑图请參照我的上一篇文章.本文纯粹实验.NAT在生产环境中不推荐使用.原因是Load Balancereasy成为瓶颈! 1.VMware9上安装Ce ...