写在前面

05/10/19

今天心情很糟糕,没学新东西,复习没复习,作业没写完,下午要网课,明天要月考,脑子里就像是被一团棉花塞住了。静静的思考了半个小时,把自己手头上的事情排了个序,所以决定先把游记写个一半。刚刚把耳机捂热了,却不放任何的歌曲——我可以静一静了。

再见,那些知识点

暨·两年后填坑清单【不完整

加粗为截至05/10/19尚未掌握的知识点
基本上每个知识点都会附上代码或者是例题,或许还会有一些当时学习的心得?

基础算法

  • 贪心

  • 分治

    • 外星密码//这道题在luogu中打了分治的标签,分解括号确实是的(很多时候我都没察觉到考分治),乍一看这题很简单,但是调代码似乎要有点久……
  • 高精度

  • 递归与递推

  • BFS && 双向BFS

    • 马的遍历//现在怎么也想不起来当初的代码是怎么WA了的,对比了一下似乎也没什么区别鸭……
  • DFS && 回溯

  • 前缀和

    • 前缀和和差分//总是会很有用的优化技巧
  • 离散化

    • 离散化//应该是吧抄老师的代码的emmm这里还有手写删除函数等待挑战
  • 倍增(QMI、RMQ、LCA、ST算法……)

  • 二分、实数域上的二分和三分//注意左右取舍间的开闭情况

    //**单调递增序列中**
    
    //x或x的后继
    while(l<r){
    	int mid=(l+r)>>1;
    	if(a[mid]>=x)	r=mid;
    	else	l=mid+1;
    }
    return a[l];
    
    //x或x的前驱
    while(l<r){
    	int mid=(l+r)>>1;
    	if(a[mid]<=x)	l=mid;
    	else	r=mid-1;
    }
    return a[l];
    
  • 模拟

STL

//关于STL的博客,就不在这里一一列了

  • vector
  • set
  • map && multimap
  • stack
  • queue && priority_queue
  • bitset

数据结构

    • 二叉树 这是二叉树……
    • 树状数组:树状数组1树状数组2【学了差不多忘了……太对不起xqy了!ごめんなさい!
    • 线段树【同上……对不起对不起对不起对不起……
    • 树的直径//没见过没学过没用过……请参考
    • 树的旋转
    • LCA
    • 树链剖分
    • 平衡树
    • 拓扑排序(AOV、AOE)
  • 单调栈
a[n+1]=p=0;
for(int i=1;i<=n+1;++i){
	if(a[i]>s[p]){
		s[++p]=a[i];
		w[p]=1;
	}
	else{
		int width=0;
		while(s[p]>a[i]){
			width+=w[p];
			ans=max(ans,(long long)width*s[p]);
			p--;
		}
		s[++p]=a[i];
		w[p]=width+1;
	}
}
int l=1;r=1;
q[1]=0;
for(int i=1;i<=n;++i){
	while(l<=r&&q[l]<i-m)	l++;
	ans=max(ans,sum[i]-sum[q[l]]);
	while(l<=r&&sum[q[r]]>=sum[i])	r--;
	q[++r]=i;
}

字符串处理

图论

//我会永远记得奇怪的电梯的!

数论

谁能想到我现在学的里面最全的居然是数论……

请参考寒假的博客请麻烦压一下定理的棺材板啦

  • 质数与约数
  • 线性筛/欧拉筛法
  • 辗转相除法
  • 扩展欧几里德
  • 快速幂
  • 欧拉函数
  • 威尔逊定理
  • 卢卡斯定理
  • 费马小定理
  • 矩阵
  • 高斯消元
  • 容斥原理
  • 博弈论//关于NIM
  • 组合数
  • 中国剩余定理

动态规划

一些零碎/未曾遇见的知识点

  • 对拍//有用小技能
  • 命令行//有用小技能*2
  • 计算几何
  • 莫队
  • 位运算
  • 打表//打表出奇迹!
  • 随机化

再见,那些题与时刻

再见,那些代码

2018.7码风

#include<bits/stdc++.h>
using namespace std;
    int pay[13];
    int money[13];
    int save[13];
    int y[13];
    int x[13];
    int cannot;
    int total;
    double finalget;
int main(){
	money[1]=0;
    for(int a=1;a<=12;a++)
	{
      cin>>pay[a];
    }
    for(int i=1;i<=12;i++)
	{
      x[i]=money[i-1]+300-pay[i];
      money[i]=x[i]%100;
      if(x[i]<0)
      {
        cannot=-i;break;
      }
      else
      {
        y[i]=(money[i-1]+300-pay[i])/100;
        save[i]=y[i]*100;
        total+=save[i];
      }

    }
    {
        if(cannot==0)
    {
        finalget=total*1.2+money[12];
        cout<<finalget<<endl;
    }

    else
    {
        cout<<cannot<<endl;
    }

    }
      return 0;
}

2019.1码风

#include<bits/stdc++.h>
using namespace std;
long long n,m,d=1,num,a=1,b,c;
long long gcd(long long x,long long y)
{
    if(y>x)
    {
        int tmp;
        tmp=x;
        x=y;
        y=tmp;
    }
    if(x%y==0)
    {
        return y;
    }
    else gcd(y,x%y);
}
long long fun(long long x1,long long y1,long long x2,long long y2){
    if(y2==n+1) return m;
    m=x1*y2+x2*y1;
    return fun(m,y1*y2,1,y2+1);
}
int main(){
    cin>>n;
    if(n==2)    m=3;
    else    m=fun(1,1,1,2);
    for(int i=1;i<=n;i++)
    {
        d=d*(i/gcd(m,i));
        m=m/gcd(m,i);
    }
    m=m*n/gcd(d,n);
    d=d/gcd(d,n);
    if(m>d)
    {
        num=m/d;
        m=m-d*num;
    }
    if(m==0)    cout<<num;
    else
    {
        a=num;
        while(a>0)
        {
            b++;
            a/=10;
        }
        a=d;
        while(a>0)
        {
            c++;
            a/=10;
        }
        for(int i=1;i<=b;i++)    printf(" ");
        printf("%lld\n%lld",m,num);
        for(int i=1;i<=c;i++)    printf("-");
        printf("\n");
        for(int i=1;i<=b;i++)    printf(" ");
        printf("%lld\n",d);
    }
    return 0;
}

2019.8码风

#include<cstdio>
#include<algorithm>
using namespace std;
const int N=1e6+10;
int T,n,cnt,t[N],c[N],f[N];
inline void sakura(){
	for(int i=1;i<=n;++i){
		int a,b,s;
		scanf("%d%d%d",&a,&b,&s);
		if(s==0)	s=9999999;
		for(int k=1;k<=s;k<<=1){
			s-=k;
			c[++cnt]=a*k;
			t[cnt]=b*k;
		}
		if(s>0){
			c[++cnt]=a*s;
			t[cnt]=b*s;
		}
	}
}
inline int time(){
	int t1,t2,t3,t4;
	scanf("%d:%d %d:%d",&t1,&t2,&t3,&t4);
	t2+=t1*60,t4+=t3*60;
	return t4-t2;
}
int main(){
	T=time();
	scanf("%d",&n);
	sakura();
	for(int i=1;i<=cnt;++i)
		for(int j=T;j>=c[i];--j)
			f[j]=max(f[j],f[j-c[i]]+t[i]);
	printf("%d",f[T]);
	return 0;
}

再见,那些OJ/网站

再见,那些人与事

此篇不作公开(像是有人会看一样),单独私发。

一年左右了,我在机房里讲的话两只手可以数过来,可是这次我想无声地说一次“大话”:请在2021/06/26的时间轴上等我,80个志愿,我只需要一个——

浙江大学 工科试验班(信息)

[AFO·游记]我的C++451天游击战的更多相关文章

  1. SCOI2017 游记(AFO)

    SCOI2017 游记(AFO) Day 0 上午模拟考,又tm用暴力a了一道题,心情舒畅.(要是省选也这样该有多好,2333) 晚上又去吃了什么不知名的东西,自己都忘了,总之好像很好吃的样子. Da ...

  2. CSP-S 游记(算是AFO记 8)

    Day-1 没什么好写的,还是一道题还是能调半天的状态 Day 0 假装出去旅游,结果公交车开了三个小时,状态直接爆炸 晚上颓了一下,最后还是 10 点睡的...真的当成是旅游了吧,只有到了比赛的时候 ...

  3. Noip2018游记——AFO

    本来Day 0和Day 1写得挺轻松的,结果没想到Day 2是这样的画风...心情逐渐沉重... Day 0 白天的时候颓的一批,上午考的信心赛还打错了一个字母然后$100pts\rightarrow ...

  4. 2019年十一月(CSP S游记及AFO)

    DAY-4 晚自习和班里以及搞OI的两个dalao商量了下决定停课了,当时觉得停得好晚,有的dalao都停一个月了.(现在感觉是明智的选择,我OI辣么菜还不如专注文化课) 晚上回家洗了个澡. DAY- ...

  5. CSP-S 2019 游记,以及AFO

    CSP-S:Day1 195 Day2 84 滚粗,AFO. Day0 和cyl神仙打了一会儿游戏,九点半教了cyl一下LCT,开始写板子题,写到十点半,睡觉. Day1 六点半起床.吃饭.赶赴考场, ...

  6. AFO以后的机房游记

    2019.8.6~8.8 周老师让我讲插头DP,理所当然地到机房备课(tuifei) dl24来了足足19个人.只可惜lsy没来,我们的phy,ljx去了首师附.看不到神仙打架了[哭] 插头DP这玩意 ...

  7. ZJOI2019一轮游记

    Preface 期待已久的省选终于开始了233,关于之前的一些内容,在ZJOI2019一轮停课刷题记录都可以找到,这里不再赘述 ZJOI2019,Bless All Day -1 今天难得有休息,昨晚 ...

  8. NOI2017 游记

    成功在NOI2017退役……现在的我已经是一只退役狗了 结果也一直到了退役,我都还不会半平面交,不会单纯形,不会非旋转版Treap…… FWT我也不熟,分治FFT我也只写过一道板子题 但是现在已经退役 ...

  9. CTSC2018&APIO2018游记

    CTSC2018&APIO2018游记 Day 0 傍晚出发,从长沙通往帝都的软卧哟. 然而长沙某中学坐高铁比我们晚出发还早到 Day 1 为了正经地写游记我决定忍住不在博客里吐槽酒店. 午饭 ...

随机推荐

  1. redis保存dataset

    公司统一走redis缓存,也将之前的memcache迁移到redis碰到问题是redis的dataset缓存. memcache底层封装了dataset的序列化. 而redis引的DLL包,未支持.所 ...

  2. QQbug--QQ截图不显示保存类型

    QQ软件bug--QQ截图不显示保存类型,设置显示后缀名也没用 问题:     QQ截图截后,不通过对话框直接保存时,不显示保存类型,文件名下面的类型的框框是一片空白,在文件夹选项设置显示后缀名也没用 ...

  3. Python字符串编码——Unicode

    ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte).也就是 ...

  4. All Tips

    Outlook分享心得 这是在爱奇艺的一场Outlook分享会上我记录的笔记. Read More 分享一点"关于应届生如何写简历"的人生经验 应届生如何写好一份求职简历是一件重要 ...

  5. AndroidStudio自动导入包

    IntelliJ IDEA可以自动优化导入包,但是有多个同名的类位于不同的包时,需要自己手动使用Alt + Enter进行导入. Settings→Editor→General→Auto Import ...

  6. mysql JOIN查询

    查询左表a,并且关联a表在b表中的关联,如果关联不存在也可以查出左表的,注:只查询a的部分列,和b的部分列 SELECT a.id, b.id as my FROM a LEFT JOIN b ON ...

  7. JMeter-完成批量的接口测试

    前言 当我们在工作中进行接口测试时,项目的接口肯定不止一个,而是很多很多,而且每个接口都需要进行正确参数,错误参数,参数为空,特殊字符等方式来测试接口是否能够正确返回所需的响应值. 今天,我们来一起学 ...

  8. git上传命令步骤

    1.登陆github后,进入Github首页,点击New repository新建一个项目 2. 填写相应信息后点击create repository即可 Repository name: 仓库名称( ...

  9. SPA中前端路由基本原理与实现方式

    SPA 前端路由原理与实现方式 通常 SPA 中前端路由有2中实现方式,本文会简单快速总结这两种方法及其实现: 修改 url 中 Hash 利用 H5 中的 history Hash 我们都知道 ur ...

  10. TCP/IP基础总结性学习(6)

    HTTP 首部 一. HTTP 报文首部 1.HTTP 报文的结构: 2.HTTP 请求报文 图示: 举例子: 3.HTTP 响应报文: 下面的示例是访问 http://hackr.jp 时,请求报文 ...