写在前面

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. JAVA递归、非递归遍历二叉树

    前序遍历:1.访问根节点 2.前序遍历左子树 3.前序遍历右子树 中序遍历:1.中序遍历左子树 2.访问根节点 3.中序遍历右子树 后序遍历:1.后序遍历左子树 2.后序遍历右子树 3.访问根节点-- ...

  2. PHP 错误与异常的日志记录

    提到 Nginx + PHP 服务的错误日志,我们通常能想到的有 Nginx 的 access 日志.error 日志以及 PHP 的 error 日志.虽然看起来是个很简单的问题,但里面其实又牵扯到 ...

  3. Oracle与Mysql的高级查询与难点sql

    一.连接查询  1.内连接      内连接用于返回满足连接条件的所有记录.默认情况下,在执行连接查询时如果没有指定任何连接操作符,那么这些连接查询都属于内连接. Sql代码   1.   SELEC ...

  4. react-native start 启动错误解决方法

    ERROR Error watching file for changes: EMFILE {"code":"EMFILE","errno" ...

  5. windows的各种扩展名详解

    Windows系统文件按照不同的格式和用途分很多种类,为便于管理和识别,在对文件命名时,是以扩展名加以区分的,即文件名格式为: 主文件名.扩展名.这样就可以根据文件的扩展名,判定文件的种类,从而知道其 ...

  6. kafka Py客户端

    1.pip install kafka-python 2.Producer.py from kafka import KafkaProducer producer = KafkaProducer(bo ...

  7. POI之下载模板(或各种文件)

    该例基于Nutz框架 前台代码: <a href="" id="errordownload" onclick="downloadErrorLog ...

  8. 正则表达式之RegExp对象

    1.定义 RegExp对象是原生JavaScript中表示正则表达式的对象:是正则表达式(regular expression)的简写.有一点需要明确知道,正则表达式只能对字符串进行操作. 2.语法 ...

  9. GDB调试系列之了解GDB

    想要熟练利用GDB进行程序调试,首先要了解什么是GDB. 1. 什么是GDB GDB (the GNU Project Debugger) 是一个可以运行在大多数常见的UNIX架构.Windows.M ...

  10. 前端每日实战:132# 视频演示如何用纯 CSS 创作一只思考的手

    效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/WgdVyx/ 可交互视频 此视频是 ...