1712: [Usaco2007 China]Summing Sums 加密

Time Limit: 5 Sec  Memory Limit: 64 MB
Submit: 338  Solved: 127
[Submit][Status][Discuss]

Description

    那N只可爱的奶牛刚刚学习了有关密码的许多算法,终于,她们创造出了属于奶牛的加密方法.由于她们并不是经验十足,她们的加密方法非常简单:第i只奶牛掌握着密码的第i个数字,起始的时候是Ci(0≤Ci<90000000).加密的时候,第i只奶牛会计算其他所有奶牛的数字和,并将这个数字和除以98765431取余.在所有奶牛计算完毕之后,每一只奶牛会用自己算得的数字代替原有的数字.也就是说,
这样,她们就完成了一次加密.    在十一月,奶牛们把这个加密法则告诉了驼鹿卡门,卡门惊呆了.之后,在一个浓雾弥漫的平安夜,卡门与奶牛们:“你们的算法十分原始,很容易就被人破解.所以你们要重复这个加密过程T(1≤T≤1414213562)次,才能达到加密效果.”    这回轮到奶牛们惊呆了.很显然,奶牛们特别讨厌做同样的无聊的事情很多次.经过了漫长的争论,卡门和奶牛们终于找到的解决办法:你被刚来加密这些数字.

Input

    第1行输入N和T,之后N行每行一个整数表示初始的Ci.

Output

 
    共N行,每行一个整数,表示T次加密之后的Ci.

Sample Input

3 4
1
0
4

INPUT DETAILS:

Three cows, with starting numbers 1, 0, and 4; four repetitions of the
encryption algorithm.

Sample Output

26
25
29

OUTPUT DETAILS:

The following is a table of the cows' numbers for each turn:

Cows' numbers
Turn Cow1 Cow2 Cow3
0 1 0 4
1 4 5 1
2 6 5 9
3 14 15 11
4 26 25 29

HINT

 

Source

题解:其实直接根据原来的题意手推一下,不难发现规律,其实这个主要就是由一个等比数列的和构成的,别的不难,推推即可(HansBug:萌萌哒HansBug蒟蒻想了想还是贴上公式吧,看我多良心^_^)

\(Ans_i = {( -1 )}^{ T+1 } \frac{  [ 1-{(1-N)}^{T} ]  \sum_{1}^{N}C_i  }{N}\)

我。。居然把取模的数一开始当成987654321了,结果还费了半天劲去求phi,还WA掉了TT,后来发现题目中的98765431原来就是个素数TT,别的真的没了,感觉切忌考场上再次逗比TT

 const p=;
var
i,j,k,l,m,n:longint;
sum,a1,a2,a3,a4:int64;
a:array[..] of int64;
function ksm(x,y:int64):int64;
var z:int64;
begin
if y= then exit();
if y= then exit(x mod p);
z:=ksm(x,y div ) mod p;
z:=(z*z) mod p;
if odd(y) then z:=(z*x) mod p;
exit(z);
end;
function trans(x:int64):int64;
begin
if x>= then exit(x mod p);
x:=(x+(abs(x) div p+)*p) mod p;
exit(x);
end;
begin
readln(n,m);
for i:= to n do readln(a[i]);
sum:=;
for i:= to n do
begin
a[i]:=a[i] mod p;
sum:=(sum+a[i]) mod p;
end;
a1:=(-ksm(-n,m));
a1:=((sum*a1) mod p);
a1:=(ksm(n,p-)*a1) mod p;
a2:=ksm(-,m+);
for i:= to n do writeln(trans(a2*(a1-a[i])));
readln;
end.

1712: [Usaco2007 China]Summing Sums 加密的更多相关文章

  1. bzoj 1712: [Usaco2007 China]Summing Sums 加密

    1712: [Usaco2007 China]Summing Sums 加密 Description     那N只可爱的奶牛刚刚学习了有关密码的许多算法,终于,她们创造出了属于奶牛的加密方法.由于她 ...

  2. BZOJ_1712_[Usaco2007 China]Summing Sums 加密_矩阵乘法

    BZOJ_1712_[Usaco2007 China]Summing Sums 加密_矩阵乘法 Description     那N只可爱的奶牛刚刚学习了有关密码的许多算法,终于,她们创造出了属于奶牛 ...

  3. BZOJ1712 : [Usaco2007 China]Summing Sums 加密

    设$s[i]$为进行$i$次加密后所有奶牛数字的和,有$s[i]=(n-1)s[i-1]$. 设$c[i]$为某头固定的奶牛进行$i$次加密后的数字, 若$i$为奇数,有: \[c[i]=((1-n) ...

  4. 【bzoj1712】[Usaco2007 China]Summing Sums 加密 矩阵乘法

    题目描述 那N只可爱的奶牛刚刚学习了有关密码的许多算法,终于,她们创造出了属于奶牛的加密方法.由于她们并不是经验十足,她们的加密方法非常简单:第i只奶牛掌握着密码的第i个数字,起始的时候是Ci(0≤C ...

  5. 【BZOJ1713】[Usaco2007 China]The Bovine Accordion and Banjo Orchestra 音乐会 斜率优化

    [BZOJ1713][Usaco2007 China]The Bovine Accordion and Banjo Orchestra 音乐会 Description Input 第1行输入N,之后N ...

  6. BZOJ_1713_[Usaco2007 China]The Bovine Accordion and Banjo Orchestra 音乐会_斜率优化

    BZOJ_1713_[Usaco2007 China]The Bovine Accordion and Banjo Orchestra 音乐会_斜率优化 Description Input 第1行输入 ...

  7. BZOJ-USACO被虐记

    bzoj上的usaco题目还是很好的(我被虐的很惨. 有必要总结整理一下. 1592: [Usaco2008 Feb]Making the Grade 路面修整 一开始没有想到离散化.然后离散化之后就 ...

  8. bzoj AC倒序

    Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...

  9. USACO 刷题记录bzoj

    bzoj 1606: [Usaco2008 Dec]Hay For Sale 购买干草——背包 #include<cstdio> #include<cstring> #incl ...

随机推荐

  1. loadrunner Analysis :SLA(Service Level Agreement服务水平协议)

    SLA是为负载场景定义的具体目标,用于与实际负载结果比较,确定系统是否达到性能目标. 1.1.1     设置SLA(以Transaction Response Time(Average)为例) 可以 ...

  2. Introduce: IEPI.BIATranscribe 图像表格拓写工具

    应用场合 数据表格是学术.文案工作中常用的表述形式.我们经常需要从第三方获取所需的数据.有些时候这些数据并非以可直接编辑的形式(如电子表格文档),而是以打印件或者扫描件的形式提供.假如需要对数据进行进 ...

  3. We Chall-Training: Crypto - Caesar I-Writeup

    MarkdownPad Document html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,ab ...

  4. ECMAScript 6 笔记(六)

    编程风格 1. 块级作用域 (1)let 取代 var (2)全局常量和线程安全 在let和const之间,建议优先使用const,尤其是在全局环境,不应该设置变量,只应设置常量. const优于le ...

  5. 【微信开发】玩转PHP 数组用法!

    数组的起始下标可以不从0开始,例子为从2开始. $data = array(2=>'A','B','C');     运行结果:$data = array(2=>'A',3=>'B' ...

  6. C# 基础控制台程序的创建,输出,输入,定义变量,变量赋值,值覆盖,值拼接,值打印

    基础学习内容有 Console.WriteLine("要输出的内容");//往外输出内容的 Console.ReadLine(); //等待用户输入,按回车键结束,防止程序闪退 控 ...

  7. sping整合hibernate之二:dao层开发

     在上一篇日志中将hibernate的会话工厂sessionFactory注入到了spring的容器中,但这样还不够,因为hibernate的增删改查是要使用事务机制的, 所以还要在spring中配置 ...

  8. Java实现GB2312文件转UTF8文件

    有些书带的光盘的源代码是GB2312编码.通常IDE的编码是UTF8.这样直接导入IDE会乱码. 这时候就需要把GB2312的文件转成UTF8的文件.转化的思路很简单,读入流初始化的时候告诉jvm是G ...

  9. 球谐光照(Spherical Harmonics Lighting)及其应用-应用篇

    上一篇介绍了球谐函数的一些原理和性质,本篇主要介绍如何实现球谐光照,将这种光照应用到实际的场景中去. 我们知道,球谐光照实际上就是将周围的环境光采样成几个系数,然后渲染的时候用这几个系数来对光照进行还 ...

  10. 写好你的JavaScript

    关于 微信公众号:前端呼啦圈(Love-FED) 我的博客:劳卜的博客 知乎专栏:前端呼啦圈 前言 在实际工作中,我们应该经常会看到一些功能上没有问题,但编码风格和规范却十分糟糕的代码,这往往会让人不 ...