10-8 王小呆的校内互坑赛题面

自己闲的没事出的校内互坑赛。
教训:数据一定不能做水,自己难受还被骂。
不过挺开心的,一起进步。

money

题目背景:

​ 王小呆又陷入自己的梦里。(活在梦里。。。)

题目描述:

​ 王小呆是一个有梦想的小菜鸡,那就是赚好多好多的钱。现在机会来了,在他面前是一个迷宫,一共有N个点,M条路,王小呆可以在这些路上随便走,并且最重要的是,这些路上都有着数额不同的钱,王小呆每走过一条路,就可以得到这条路上所有的钱(我们认为王小呆特别贪婪,所以他用来装钱的袋子是无穷大的。。。),因为王小呆的梦很神奇,所以当一条路上的钱被他取走之后,这条路上又会出现一些新的钱,数量为原来钱的数量乘上这条路的“恢复系数”,向下取整。

​ 比如,一条路上有4块钱,这条路的“恢复系数”为0.7,则先后四次经过这条路能得到的钱分别为:4,2,1,0。

​ 现在王小呆在第S个点。因为王小呆还没有意识到自己活在梦里,所以他依旧十分兴奋,然而他的智商又不够,只能请聪明的你帮助他计算出他一共能够拿到多少钱。

​ 注意:所有的边全部是单向边。不然岂不是沙比题???

输入输出格式:

​ 输入格式:第一行,N和M。

​ 第2……M+1行,每行四个数字,分别表示一条路的起点,终点,初始钱数,恢复系数。

​ 第M+2行,一个整数S。

​ 输出格式:一个数字,表示最多能拿到多少钱。

输入输出样例:

​ 输入样例:

3 3
1 2 4 0.5
1 3 7 0.1
2 3 4 0.6
1

​ 输出样例:

8

对于\(0%\)的数据,保证是样例

对于\(30%\)的数据 保证n<=10

对于另外\(30%\)的数据 保证恢复系数为0(良心)

对于\(100%\)的数据,保证N<=M,M<=100000,0.1<=恢复系数<=0.8且仅有一位小数

保证 1<=S<=N

不保证数据没有坑。std没有考虑自边和重边以及不连通,是过掉的...

​ 所以请大家当做无重边无自环做即可。

dream

题目背景:

​ 意识到自己活在梦里,是一件多么痛苦的事情。

​ 活在梦里就像温水煮青蛙,慢慢地麻痹自己,慢慢地忘记自己的梦想和追求。王小呆意识到自己处在多么可怕的处境,所以他决心要逃出自己的梦,可是要逃出自己的梦,可没有那么简单。

题目描述:

​ 为什么王小呆会困在自己的梦里,因为他被自己的畏惧所困住。(因为他困。。。)他在畏惧什么?他在畏惧一道难题,因为这道题太难了,但是这只是对于王小呆这个菜鸡,其他的大佬很快就切掉了这道题,就只有王小呆苦苦徘徊一直想不出正解,然后他就选择了麻痹自己,让自己进入了梦里。

​ 现在,王小呆逃出梦境的唯一方法就是解决这道难题,打破自己的恐惧,可是他的实力确实有限,于是来请教你,你能帮助他解决难题吗?

​ 这道难题是求出:

\[a^x\equiv1(modn) \]

​ 的最小整数解

​ 那么现在请你帮助王小呆完成任务,帮助他逃离梦境。

​ 如果不存在方案使得\(a^x-1\)整除n,则输出“w_x_c_q is living in a dream”。

\[良心出题人给大家一个定义: 对于gcd(a,n)=1的整数,满足a^x≡1 (mod n ) 的最小整数x,称为a模n的阶。 \\那么现在大家要求的就是a模n的阶 \]

输入输出格式:

​ 输入格式:第一行输入t,表示一共有t组数据。

​ 接下来t行,每行两个整数a和n

​ 输出格式:共t行,一行一个数字表示最小正整数解,若不存在符合条件的方案,输出“w_x_c_q is living in a dream”(不含双引号)。

输入输出样例:

​ 输入样例

1
2  3

​ 输出样例

2

所有数据保证 t=100

对于\(0%\)的数据,保证是样例。

对于\(10%\)的数据,保证a,n<=10

对于\(30%\)的数据,保证a,n<=1000

对于\(60%\)的数据,保证a,n<=10000

对于\(100 %\)的数据,保证a,n<=100000

另外,保证第一个测试点数据没有不合法情况。(即不会输出“w_x_c_q is living in a dream”)

​ 保证第二个测试点只有一组数据合法。

​ 保证第三个测试点所有数据均不合法。

不保证数据没坑。

hope

题目背景

人是要有梦想的,对吧。

现在呢,王小呆终于不再活在梦里,但是他还是一个有梦想的人,现在他的机房又要考试了,然而他又特别地想要考好。所以说,现在王小呆的梦想就是考好喽。

知己知彼百战百胜,所以王小呆想要知道所有人的实力水平。

我们约定:机房内的每一个人都有一个能力值记作\(a_i\),同时,每个人不可能总是在一个水平,总会有爆发的时候不是吗,所以每一个人还有一个激进值记作\(b_i\),也就是说每个人的水平可以由\(a_i\)变为\(a_i+b_i\)

现在王小呆把所有人的数据都找来了,但是他却犯难了,笨笨的王小呆哪里有脑子去从这些数据中找出他想知道的东西,所以他只好又厚着脸皮来找你帮忙了,那么现在你能帮助她再一次解决问题吗?

题目描述

现在王小呆已经准备好了每个人的数据分别为\(a_i\)\(b_i\)。那么我们定义:

​ 如果有两个人A和B,那么若出现了A的普通水平低于B的普通水平,但是A的高水平高于B的普通水平,然而B的高水平又高于A的高水平,则对答案产生一的贡献。

​ 也就是说,现在你要求的是有多少对人 满足:

\[A_{ai}<B_{ai}<A_{ai}+A_{bi}<B_{ai}+B_{bi} \]

另外,我们认为在任何情况下,都不会出现两个人水平相同。

输入输出格式:

​ 输入格式:第一行一个整数n,表示一共有n个人

​ 接下来n行每行两个整数\(a_i,b_i\),意义同题。

​ 输出格式:一行一个整数ans,表示一共有ans对符合条件的人。

输入输出样例:

​ 输入样例:

3
1 2
2 2
5 1

​ 输出样例:

1

样例解释,第一个人和第二个人是符合题目中的要求的,所以答案是1。

对于\(30\)%的数据,保证n<=100

对于60%的数据,保证n<=1000

对于100%的数据,保证n<=30000

posted @ 2018-10-08 19:09  _王小呆  阅读(226)  评论(0编辑  收藏  举报