Codeforces Beta Round #62(Div.1_3月19日)

比赛链接:http://www.codeforces.com/contest/68

第一次做cf,规则很纠结,又是作为今年邀请赛选拔赛的比赛,纠结之下更是纠结,

开始第一题读题不深入,直接跳第二题,又觉得第二题很难,于是到回去第一题,发现可以暴力写,于是写了,提交结果pretest passed,代码放那里,希望有人可以cha我,等一个多小时后没人cha,我便锁代码了;

然后是看其他题,发现题意十分难读懂;赛后Re Judge,A题AC,rating是1406,第一次有rating了,可是第二题,linwei和我说就是一个二分,我。。。我发现linwei真的很强,我发现很多时候思想是很重要的,先有思想再有思路,再有代码;linwei过了前两题,他说他rating是1700+,我纳闷着分数是怎么算出来的,经过这一场比赛,我更加坚定了我坚持做cf的信念;

 

【A题】

题意:

给定四个数p1,p2,p3,p4其中pi有24种全排列,要求一个区间[x,y]中满足性质的数的个数,性质是: i连续地模pi,最后结果仍然是i,要求24个全排列中至少有7个,能使i满足此条件;

测试数据:

2 7 1 8 2 8
20 30 40 50 0 100
31 41 59 26 17 43

=》0 20 9

我比赛时提交的代码(先求出全排列,然后是对每一个数进行枚举判定):

 

之后队友提供了神牛的代码,发现很神,没有很强大的数学知识为后盾,没有很大的题量作基础,敢写这样的代码吗?怪不得他们可以再2分钟内ac;

 

应该是有这样的性质,一个数x模4个数,结果与模哪个数的顺序无关,如果模4个数要是结果仍然是本身的话,x必须小于这4个数,推广之,一个数x%y,结果仍是x则x必小于y,因为%y的结果是[0,y-1],所以有这个结论,如此简单的结论比赛时居然没想到;

 

神码1:

 

神码2:

 

之后想想,既然上面的结论的正确的话,代码就可以优化在O(1)的时间内求出结果,如下:

 

 

【B题】

按linwei说的二分答案,写了下,就1Y,绝对悲剧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值