题目链接:https://nanti.jisuanke.com/t/30990

Alice, a student of grade 6, is thinking about an Olympian Math problem, but she feels so despair that she cries. And her classmate, Bob, has no idea about the problem. Thus he wants you to help him. The problem is:

We denote k!:

k! = 1 * 2 * 3 * … * (k - 1) * k

We denote S:

S = 1 * 1! + 2 * 2! + … + (n - 1) * (n - 1)!

Then S module n is ____________

You are given an integer n.

You have to calculate S modulo n.

Input
The first line contains an integer T(T≤1000), denoting the number of test cases.

For each test case, there is a line which has an integer n.

It is guaranteed that 2≤n≤10^18.

Output
For each test case, print an integer S modulo n.

题意:

假设 $S\left( n \right) = 1 \times 1! + 2 \times 2! + \cdots + \left( {n - 1} \right) \times \left( {n - 1} \right)!$,求 $S\left( n \right)$ 模 $n$ 的余数。

题解:

$\begin{array}{l} 1 + S\left( n \right) \\ = 1 + 1 \times 1! + 2 \times 2! + \cdots + \left( {n - 1} \right) \times \left( {n - 1} \right)! = 2 \times 1! + 2 \times 2! + \cdots + \left( {n - 1} \right) \times \left( {n - 1} \right)! \\ = 2! + 2 \times 2! + \cdots + \left( {n - 1} \right) \times \left( {n - 1} \right)! = 3 \times 2! + \cdots + \left( {n - 1} \right) \times \left( {n - 1} \right)! \\ = 3! + 3 \times 3! + \cdots + \left( {n - 1} \right) \times \left( {n - 1} \right)! = 4 \times 3! + \cdots + \left( {n - 1} \right) \times \left( {n - 1} \right)! \\ = \cdots = \left( {n - 1} \right)! + \left( {n - 1} \right) \times \left( {n - 1} \right)! = n \times \left( {n - 1} \right)! = n! \\ \end{array}$

所以有 $S\left( n \right)\bmod n = \left( {n! - 1} \right)\bmod n = \left( {n! + n - 1} \right)\bmod n = n!\bmod n + \left( {n - 1} \right)\bmod n = n - 1$。

AC代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{
int t;
cin>>t;
long long n;
while(t--)
{
cin>>n;
cout<<n-<<endl;
}
}

计蒜客 30990 - An Olympian Math Problem - [简单数学题][2018ICPC南京网络预赛A题]的更多相关文章

  1. 计蒜客 30996 - Lpl and Energy-saving Lamps - [线段树][2018ICPC南京网络预赛G题]

    题目链接:https://nanti.jisuanke.com/t/30996 During tea-drinking, princess, amongst other things, asked w ...

  2. 计蒜客 30990.An Olympian Math Problem-数学公式题 (ACM-ICPC 2018 南京赛区网络预赛 A)

    A. An Olympian Math Problem 54.28% 1000ms 65536K   Alice, a student of grade 66, is thinking about a ...

  3. 计蒜客 31452 - Supreme Number - [简单数学][2018ICPC沈阳网络预赛K题]

    题目链接:https://nanti.jisuanke.com/t/31452 A prime number (or a prime) is a natural number greater than ...

  4. 计蒜客 31001 - Magical Girl Haze - [最短路][2018ICPC南京网络预赛L题]

    题目链接:https://nanti.jisuanke.com/t/31001 题意: 一带权有向图,有 n 个节点编号1~n,m条有向边,现在一人从节点 1 出发,他有最多 k 次机会施展魔法使得某 ...

  5. 计蒜客 30999 - Sum - [找规律+线性筛][2018ICPC南京网络预赛J题]

    题目链接:https://nanti.jisuanke.com/t/30999 样例输入258 样例输出814 题意: squarefree数是指不含有完全平方数( 1 除外)因子的数, 现在一个数字 ...

  6. 计蒜客 30994 - AC Challenge - [状压DP][2018ICPC南京网络预赛E题]

    题目链接:https://nanti.jisuanke.com/t/30994 样例输入: 5 5 6 0 4 5 1 1 3 4 1 2 2 3 1 3 1 2 1 4 样例输出: 55 样例输入: ...

  7. 计蒜客 31453 - Hard to prepare - [递归][2018ICPC徐州网络预赛A题]

    题目链接:https://nanti.jisuanke.com/t/31453 After Incident, a feast is usually held in Hakurei Shrine. T ...

  8. 计蒜客 31447 - Fantastic Graph - [有源汇上下界可行流][2018ICPC沈阳网络预赛F题]

    题目链接:https://nanti.jisuanke.com/t/31447 "Oh, There is a bipartite graph.""Make it Fan ...

  9. 计蒜客 31460 - Ryuji doesn't want to study - [线段树][2018ICPC徐州网络预赛H题]

    题目链接:https://nanti.jisuanke.com/t/31460 Ryuji is not a good student, and he doesn't want to study. B ...

随机推荐

  1. flexbox父盒子align-items属性

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Robot Framework配置发送邮件功能

    请参考:http://www.robotframework.net/?/article/118

  3. CentOS下安装vsftpd

    因为FTP的端口是 两个,一个是固定21端口,还有一个任意端口的数据通道.关键是任意端口不好搞. 首先在vsftpd的配置文件中设置 任意端口的范围 [root@localhost root]# vi ...

  4. apt-get/dpkg常用指令备查

    apt-get install <package> Downloads <package> and all of its dependencies, and installs ...

  5. Selenium 管理 Cookies

    使用 Selenium ,还可以方便地对 Cookies 进行操作,例如获取.添加 .删除 Cookies 等 from selenium import webdriver browser = web ...

  6. [NodeJS] Node.js 与 V8 的故事

    要说Node.js的历史,就不得不说说V8历史.在此之前我们先一句话描述一下什么是Node.js:Node.js是一个基于Google Chrome V8 Javascript引擎之上的平台,用以创建 ...

  7. python--Anaconda学习笔记

    http://study.163.com/course/courseLearn.htm?courseId=1003664056#/learn/video?lessonId=1048567028& ...

  8. Python正则表达式 学习笔记

    python第一个正则表达式 1. import re : python正则表达式模块 2. 第一个正则表达式 re.compile(r'imooc') pattern.match('imooc py ...

  9. YII2 model 字段验证提示 Unknown scenario: update

    意思是 update 场景不存在,也就是 定义的 rules 中没有该规则: /** * @inheritdoc * 验证规则 */ public function rules() { return ...

  10. Android学习之适配器SimpleCursorAdapter

    三.   SimpleCursorAdapter与SimpleAdapter用法相近.只是将List对象换成了Cursor对象.而且SimpleCursorAdapter类构造方法的第四个参数from ...