zoukankan      html  css  js  c++  java
  • Codeforces Round #553 (Div. 2) 【C. Problem for Nazar】

    题目大意:

    一开始第一行是 1,第二行是2 4 ,第三行是3 5 7 9 ,类似这样下去,每一行的个数是上一行的个数,然后对这些点从第一个进行编号,问你从[l,r]区间数的和。

    思路:分别求出奇数和偶数的个数。然后开始暴力。居然过了==

    公式;前m个奇数的和是(m^2),前m个偶数的和是(m*(m+1))。

     1 #include<bits/stdc++.h>
     2 
     3 using namespace std;
     4 #define int unsigned long long
     5 #define mod 1000000007
     6 int fqow(int a,int b){
     7     int  ans=1;
     8     while(b){
     9         if(b%2){
    10             ans*=a;ans%=mod;
    11         }
    12         b/=2;
    13         a*=a;
    14         a%=mod;
    15     }
    16     return ans;
    17 }
    18 int slove(int n){
    19     int sodd=1;int seven=0;
    20     int sum=1;int add=1;int cnt=1;//次数 
    21     for(;;){
    22         if(sum>n){
    23             break;
    24         }
    25         add*=2;
    26         cnt++;//次数 
    27         if(cnt%2){
    28             sodd+=add;
    29         }else{
    30             seven+=add;
    31         }
    32         sum+=add;
    33     }
    34     if(cnt%2){
    35         int temp=n-(sum-add);
    36         sodd-=add;
    37         sodd+=temp;
    38     }else{
    39         int temp=n-(sum-add);
    40         seven-=add;
    41         seven+=temp;
    42     }
    43     
    48     
    49     int ans1=(sodd%mod)*((sodd)%mod)%mod;
    50     int ans2=(seven%mod)*((seven+1)%mod)%mod;
    51     return (ans1%mod+ans2%mod)%mod;
    52     
    53 }
    54 signed main(){
    55     int L,R;
    56     cin>>L>>R;
    57 //    cout<<slove(L)<<" "<<slove(R)<<" "<<'
    ';
    58     cout<<(slove(R)%mod-slove(L-1)%mod+mod)%mod<<'
    ';
    59     return 0;
    60 }
    61 
    62 /*
    63 1 3 5 7 9 25
    64 1 3 5 7  16
    65 1 3 5  8
    66 1 3 4
    67 
    68 2 4 6
    69 odd  1  4  16   64
    70 even  2  8   32 
    71 2 4 6 12
    72 
    73 2 4 6 8 20
    74 */
  • 相关阅读:
    qt用mingw编译时报错 multiple definition of
    作用域详解
    webpack-dev-server
    前端致命错误汇总
    那些我不知道的基础知识
    常见英语词汇第一记
    CSS权重;慎用!important
    校验正确获取对象或者数组的属性方法(babel-plugin-idx/_.get)
    同源策略
    用CSS实现梯形图标
  • 原文地址:https://www.cnblogs.com/pengge666/p/11837669.html
Copyright © 2011-2022 走看看