概 览

题目   时限    内存限制   分值    输入文件   输出文件

 A      2s     65536KB    100     a.in       a.out 
 B      1s     65536KB    100     b.in       b.out 
 C      4s     65536KB    100     c.in       c.out
 
 ---------------------------------------------------------------------------
 
Problem A : Encrypt

问题描述

    Rivest是密码学专家。近日他正在研究一种数列E={E[1],E[2],……,E[n]},
且E[1]=E[2]=p(p为一个质数),E[i]=E[i-2]*E[i-1] (若2<i<=n)。
例如{2,2,4,8,32,256,8192,……}就是p=2的数列。在此基础上他又设计了一种加密
算法,该算法可以通过一个密钥q (q<p)将一个正整数n加密成另外一个正整数d,计
算公式为:d=E[n] mod q。现在Rivest想对一组数据进行加密,但他对程序设计不太
感兴趣,请你帮助他设计一个数据加密程序。

输入格式

    从文件a.in第一行读入m,p。其中m表示数据个数,p用来生成数列E。
    以下有m行,每行有2个整数n,q。n为待加密数据,q为密钥。
    规模:0<p,n<2^31;0<q<p;0<m<=5000。

输出格式

    将加密后的数据按顺序输出到文件a.out。
    第i行输出第i个加密后的数据。

输入样例1
2 7
4 5
4 6

输出样例1
3
1

输入样例2
4 7
2 4
7 1
6 5
9 3

输出样例2
3
0
1
1
 

---------------------------------------------------------------------------
 
Problem B : Pleasure Ground

问题描述

    HarryPotter是一家游乐场的新负责人。刚上任时HarryPotter发现游客们频频抱怨
游乐场的道路非常拥挤。经过研究,HarryPotter打算把游乐场中所有道路改为单行道,
就是说游客只能从道路的一端走到另一端,而反过来不行。但是新的问题出现了:如何
保证游客能从公园的任意一个的地方走到任意其他地方。由于游乐场的道路错综复杂,
HarryPotter花了很长时间也没找到道路更改的方案。
    整个游乐场可以看作是由n个区域和m个连接两区域的道路组成的。任意两个不同的
区域间至多有一条道路。请你帮助HarryPotter将所有道路设为单向,并且使游客能从
任意区域到达任何他想去的区域。

输入格式

    输入数据存放在b.in中。
    第一行有2个整数n,m。n为游乐场被的区域数,m为道路数。
    以下有m行,每行有两个整数i,j。表示区域i与区域j之间有一条道路。 
    规模:0<n<=100。

输出格式

    输出数据存放在b.out中。
    如果没有可行方案就输出"impossible",否则:
    输出m行,每行有两个整数i,j,表示区域i与区域j之间的道路方向为从i到j。
    注意:输出数据描述的道路必须与输入数据吻合。也就是说对于输入数据中的每一
组i,j,一定能在输出数据件中找到i,j或j,i。

输入样例1
3 3
1 2
1 3
2 3

输出样例1
1 2
2 3
3 1


输入样例2
4 3
1 2
2 3
3 4

输出样例2
impossible

---------------------------------------------------------------------------
 
Problem C : War Field Statistical System

问题描述

    2050年,人类与外星人之间的战争已趋于白热化。就在这时,人类发明出
一种超级武器,这种武器能够同时对相邻的多个目标进行攻击。凡是防御力小于或
等于这种武器攻击力的外星人遭到它的攻击,就会被消灭。然而,拥有超级武器是
远远不够的,人们还需要一个战地统计系统时刻反馈外星人部队的信息。这个艰巨
的任务落在你的身上。请你尽快设计出这样一套系统。

这套系统需要具备能够处理如下2类信息的能力:

  1.外星人向[x1,x2]内的每个位置增援一支防御力为v的部队。
  2.人类使用超级武器对[x1,x2]内的所有位置进行一次攻击力为v的打击。系统需
要返回在这次攻击中被消灭的外星人个数。

注:防御力为i的外星人部队由i个外星人组成,其中第j个外星人的防御力为j。

输入格式

    从文件c.in第一行读入n,m。其中n表示有n个位置,m表示有m条信息。
    以下有m行,每行有4个整数k,x1,x2,v用来描述一条信息 。k表示这条信息属
于第k类。x1,x2,v为相应信息的参数。k=1 or 2。
    注:你可以认为最初的所有位置都没有外星人存在。
    规模:0<n<=1000;0<x1<=x2<=n;0<v<=1000;0<m<=2000

输出格式

    结果输出到文件c.out。按顺序输出需要返回的信息。

输入样例   对应输出     输出样例
3 5             无              6
1 1 3 4         无              9
2 1 2 3         6
1 1 2 2         无
1 2 3 1         无
2 2 3 5         9