zoukankan      html  css  js  c++  java
  • 日常总结

      9.24  距初赛还有29天

    暑假就已经看过分治和贪心,二周目的感觉已经完全不一样了。

    归并排序是个什么鬼呢?

    首先是把边界不断的往小的缩(递归)

    也就是这句代码

    1 mid=(l+r)/2;
    2 worksort(l,mid-1);
    3 worksort(mid,r);

    这三句就是不断的递归套用,来把一个大范围的一个数组归并成很多小的数列(也就是先确定一个小目标了);

    最后是不是就把它们两个两个的分好组了?

    然后四个元素之间排序是不是很简单?定义一个指针,如果左边大就把右边放到缓冲区,反之把左边放到缓冲区;

    最后序列里剩下的元素直接放到结尾就行

    主要作用:

    1、求解逆序对;

    2、求解逆序对;

    3、求解逆序对;

    4、额我也不知道;

    *****************以下是快速幂*********************

    快速幂这东西举个栗子就很容易明白了

    10的二进制=1010;那么a^10=a^8*1*a^2*1

    a^2很好求而a^8=a^2*a*2*a^2

    也就是分而治之了那么原来的十次乘法就被简化为4次乘法

    代码如下

    int  work(int b,int p)
    {
        long long sum=1;
        int temp=p,s=b;
        while(temp!=0)
        {
            if(temp%2==1)   sum=1ll*sum*s%k;
            temp/=2;
            s=1ll*s*s%k;
        }
        return sum;
    }
    

      

  • 相关阅读:
    2001.3.9 每日总结
    2021.3.5
    2021.3.4每日总结
    2021.3.3每日总结
    每日总结2021.3.2
    2021.1.13
    2021.1.12
    PodPreset
    ingress-nginx安装
    RBAC
  • 原文地址:https://www.cnblogs.com/supersumax/p/5903093.html
Copyright © 2011-2022 走看看