ET


私信TA

用户名:wbc

访问量:62969

签 名:

人生苦短,我TM直接py

等  级
排  名 62
经  验 10760
参赛次数 3
文章发表 68
年  龄 0
在职情况 学生
学  校 东北大学
专  业 计算机科学与技术

  自我简介:

自2020起转python了。。。 C++兼容C,所以不要问为什么我所有的提交都是C++的.... 不AC,毋宁死,代码越短越好,思路越清奇越好hhhhhhhh

公式准备:

    (16 * x) % 15 = x

    (16 ^ n * x) % 15 = x

    (1+2+... ...+15) % 15 = 0

    (n + n+1 + n+2 + ... ... + n+x) % 15 = (1+2+... ...+x)%15 = (1+x) * x / 2 % 15


注意事项:

    为了让n%15>m%15,将n%15后+15


参考代码:

#include <iostream>

using namespace std;

int main() {
    long long int m, n;
    cin >> m >> n;
    m %= 15;
    n %= 15;
    n += 15;
    cout << ((n - m) + 1) * (m + n) / 2 % 15 << endl;
    return 0;
}


 

0.0分

1 人评分

  评论区

请问如果区间右端最大值为2(^64)-1,代码能通过吗
2019-03-29 17:41:52
  • «
  • 1
  • »