zoukankan      html  css  js  c++  java
  • SRM 657 DIV2

    -------一直想打SRM,但是感觉Topcoder用起来太麻烦了.题目还是英文,不过没什么事干还是来打一打好了。但是刚注册的号只能打DIV2,反正我这么弱也只适合DIV2了..

     

    T1:

    题目大意:

    给出8*8的棋盘判断是不是每行每列都有且只有1个棋子.

     

    题解:不知怎么写题解..

     


     

     

    T2:

    题目大意:

    有E个E,EM个EM,M个M,MH个MH,H个H.  都小于等于100000。

    然后1个EM可以变成1个E或者M,1个MH可以变成1个M或者H。

    求max{min{E,M,H}}.

     

    题解:

    我是直接枚举几个EM变成E,然后让MH的分配使得M和H尽可能接近就好。细节有点恶心,浪费了较多时间。

    更好的解法是二分答案,然后判断是否可行。

     


     

     

    T3:

    题目大意:

    给出函数f(x)=ax2+bx+c,求一个x使得f(x)能被109整除。

    题解:

    如果c=0 答案就是0.

    然后我想为什么不是109+7而是109呢,显然可以利用这个东西的性质。然后可以发现109=29*59=512*1953125.

    f(x) mod 109 =0 <--> f(x) mod 512 = 0 && f(x) mod 1953125 = 0.

    所以先求出1953125以内的满足f(x) mod 1953125 = 0的所有x,显然满足条件的x是很少的.对于每个x,搜索x+1953125*i 是否满足条件即可。

    这个复杂度我不会证明,但是显然很快..


     

    总结:手速太慢。。前2题竟然搞了半小时。T3一开始的想法是错的,最后15分钟才另起炉灶。看着边上的ZBT啪啪啪40分钟打完3题room rank 1 让我吓哭。 还是不习惯tc.编译错误找不到错误在哪里.  总之下次终于可以打div1了,以后也会坚持参加每一场。

     

  • 相关阅读:
    DevExpress控件经验集合
    Oracle 11g基础
    NoSuchMethodException问题总结
    设计模式学习笔记十四:适配器模式
    设计模式学习笔记十三:模板方法模式
    设计模式学习笔记十二:访问者模式
    设计模式学习笔记十一:观察者模式
    【亲述】Uber容错设计与多机房容灾方案
    Linux 动态监听进程shell
    玩具:加减法验证码(1+?=4)
  • 原文地址:https://www.cnblogs.com/vb4896/p/4462747.html
Copyright © 2011-2022 走看看