zoukankan      html  css  js  c++  java
  • 解题报告 和谐

    1.        题目

    和谐

    harmony.pas/c/cpp

     

    【问题描述】

    k同学本来想给这个题套一个很好玩的背景的,但是因为一些原因(看题目名,你们懂的),这题的题面就变得非常无聊了。

    对于任意四个两两不同的数,记,考虑以下6个值:,在这6个值中sum的约数个数记为这四个数的和谐度。例如0,7,2,34个数的和谐度为2.因为0+20+3是这4个数的和12的约数。

    现在小k想知道两个问题:1. 如果他任意写下4个数,和谐度最大可能是多少;2. 满足并且ABCD4个数的和谐度为第1问中的值的所有四元组一共有多少组。

     

    【输入格式】

    输入一行2个整数LR,意义如上所述。

     

    【输出格式】

    输出2行,每行一个整数,分别表示2问的答案。

     

    【样例输入】

    harmony.in

    1 30

     

    【样例输出】

    harmony.out

    4

    3

     

    【样例解释】

    和谐度最大只能达到4,没有和谐度超过44个数   

    [1, 30]中,满足和谐度为44个数共有3组:

    1.  1  5  7  11

    2.  2  10  14  22

    3.  1  11  19  29

     

    【数据规模和约定】

    对于60%的数据,;

    对于100%的数据,.

     

    2.        题目实质

    告诉你一个秘密,这是 IMO(国际数奥)2011 的第一题。

    3.        算法

    和谐度最大只能达到4,没有和谐度超过44个数   -----把第一问答案就这么告你了......

    暴搜后,可以发现规律(需要证明的 google 一下 IMO),满足条件的只有两种情况:k,5k,7k,11k    k,11k,19k,29k

    然后,写就行了。

    4.        注意事项

    用公式求,不要枚举 ans (不过相信大家也没有我这么......),不然会超时。

    5.        代码

    小公式(SueMiller

    var ll,rr,t,ans:int64;

     

    begin

      assign(input,'harmony.in');reset(input);

      assign(output,'harmony.out');rewrite(output);

     

      readln(ll,rr);

      if ll>rr then begin

        writeln(4);

        writeln(0);

      close(input);close(output);

      halt;

      end;

     

      writeln(4);

      ans:=(rr div 29-ll+1)+(rr div 11-ll+1);

      if ans<0 then ans:=0;

      writeln(ans);

     

      close(input);close(output);

    end.

     

     

  • 相关阅读:
    Sharepoint COMException 0x81020037
    [SharePoint]如何去掉欢迎导航的信息?
    配置两台Azure服务器,一台加入另一台的ad域加入不进去的问题
    在Azure上部署Sqlserver网络访问不了的问题
    Page 由于代码已经过优化或者本机框架位于调用堆栈之上
    ProjectOnline同步数据到线下
    关于ProjectServer定制化项目中心页面
    oracle数据库逐步学习总结【基础二】
    Java学习个人总结
    oracle数据库逐步学习总结【基础一】
  • 原文地址:https://www.cnblogs.com/SueMiller/p/2213005.html
Copyright © 2011-2022 走看看