【2019-游记】中山纪念中学暑期游Day2

前言

不知不觉到了第二天,今天没怎么下雨,对于经历了两天大雨的自己来说:心情舒畅qwq

可是尽管“心情再舒畅”,都不能挽救考撇了的事实——努力改题吧

Day2杂记

早上依旧起不来...我秉持了自己“听到铃声继续睡”的一贯作风,成功赖床直到6:50(难道是在石马河养成的良好习惯?)

今天的早餐...不得不说和第一天比起来好多了,吃了一个火腿面包,一个椰蓉面包和一碗小米粥(小米粥居然是甜的orz)

作为重庆人...我急需一些咸的食物中和一下胃口...

今天上午的考题居然比昨天多了一道??!!不要告诉我是每天多一道,难道最后一天要做十几道吗

收住紧张兮兮的心情,开始看题——

T1:哎呀什么嘛,暴搜啦,100分轻轻松松到手啦

T2:woc?!博弈?!糟了我不会,还是个环,更吓人了,跳跳跳过

T3:题意好像很简单的样子,but没思路,跳

T4:哎呀和我以前做过的一道题好像!(轮到我上场表演了~)开始一边回忆一边瞎搞

甚至打出了如下惊人的连编译都过不了的代码:

看看就好...毕竟它还是个孩子(连编译都没过),这里只是纪念一下 智障的 自己

//超级奇葩复杂的做法,而且编译还没过orz... 
#include<cstdio>
#include<vector>
#include<queue>
#include<stack>
#include<cstring>
#include<cmath>
#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
const int MAXN=1e5,INF=0x3f3f3f3f;
int n,Min=INF,Max=-INF,ans,cnt,id,len,ID,LEN;
struct node
{
	int l,r;
}a[MAXN+5];
struct Node
{
	vector<int> num;
}f[10*MAXN+5];
Node t,que;
bool cmp(node a,node b)
{
	if(a.l==b.l)
		return a.r>b.r;
	return a.l<b.l;
}
int main()
{
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	{
		scanf("%d%d",&a[i].l,&a[i].r);
		Min=min(Min,a[i].l);
		Max=max(Max,a[i].r);
	}
	sort(a+1,a+n+1,cmp);
	for(int i=1;i<=n;i++)
	{
		//端点有可能重合怎么办? 赋值i不可行
		cnt++;
		f[a[i].l].num.push_back(-cnt);//区间左端点为负 
		f[a[i].r].num.push_back(cnt);//区间右端点为正 
	}
	cnt=0;
	for(int i=Min;i<=Max;i++)
	{
		if(!f[i].num.size())
			continue;
		for(int k=0;k<f[i].num.size();k++)//处理左端点 
		{
			int tmp=f[i].num[k];
			vector<int> Tmp;
			if(tmp<0)
			{
				//printf("%d\n",tmp);
				Tmp.push_back(tmp);
				//t.push(tmp);
			}
		}
		t[++len].num=Tmp;
		for(int k=0;k<f[i].num.size();k++)//处理右端点
		{
			int tmp=f[i].num[k];
			if(tmp>0) 
			{
				vector<int> x;
				int flag=0;
				x=t[id].num;
				ID=LEN=1;
				for(int j=0;j<x.size();j++)
				{
					if(x[j]+tmp!=0)
					{
						que[LEN++]=x[j];
					}	
					else
					{
						flag=1;
						cnt++;
						ans=max(ans,cnt);
					}
				}
				id++;
				//t.pop();
				vector<int> Tmp;
				while(LEN)
				{
					Tmp.push_back(que[ID]);
					ID++;
				}
				t[++len]=Tmp;
				//t.push(Tmp);
				if(!flag)
					cnt=0;
			}
		}
	}
	printf("%d\n",ans);
	return 0;
}

编译结果(考试仅剩3分钟,不想改了,懒,颓废):红得真吉利~

之前有个版本更厉害,可惜惨遭刷机,找不到了,写了一些神仙代码例如:

stack<vector> t;

queue<vector> que;

后来才改成了现在的结构体版本orz...然后懒得挣扎了...

考试最后的结果惊了:

(最后一名:总人数不详,因为有很多人名次一样)反正就是很伤心... -嘤嘤嘤 

后来发现是自己T1的暴搜写丑了...其他题...思路不灵活,练题不够,不能很好地转化问题...

下午改题+开心地吃饭+逛小卖部+回寝室洗头+看书(公用电吹风很赞,功率超大,自己的长发一会就吹干了qwq)

晚上继续改题——发现了lower_bound和upper_bound的玄学区别(我把代码的lower改成upper居然就直接AC了,笑哭)

今天时间还可以,能在博客bb的时间变宽裕了2333

随便说说

1.寝室楼的墙上爬了好好好多拳头大的蜗牛

2.发现自己吃零食的次数越来越多....! 可能是因为食堂满足不了我的胃/笑哭

3.手机统一上交,不开心

4.想念王者农药一起开黑的伙伴/暴风哭泣

题解永不言败

一、佳肴

https://blog.csdn.net/qq_36294918/article/details/98374936

因为数据范围:1<=N<=10,最多才2^n=1024种情况——>直接暴搜

(这次过后发现...连暴搜写丑了都是过不了的呜呜呜呜...)

二、取数游戏

https://blog.csdn.net/qq_36294918/article/details/98375877

1)处理“环”:复制一遍数组接在原数组后面

2)n^3的区间DP

(特别鸣谢)参考博客:https://blog.csdn.net/kerGH/article/details/51901125

3)一些自己总结的要点:(大多都标在代码注释里了)

最开始自己不理解,后来LYT小朋友解释:这一次是先手,那么上一次是就是后手,所以:总奇数个数 - 后手奇数个数 = 先手奇数个数

三、删除

https://blog.csdn.net/qq_36294918/article/details/98377483

万万没想到这是个【贪心】...

因为第一行保证是1~n,二三行数字范围1~n但是个数不定,所以第一行有的数,二三行不一定有,就要去掉

一直删除,直到合法即可

(依然不还是很清楚为什么只和第一行比较就可以得到正解orz...有待深入思考)

四、区间

https://blog.csdn.net/qq_36294918/article/details/98378098

考试时自己一直在联系以前做过的题:线段叠加和括号匹配,感觉这道题很像(后来发现...不好实现...还不如不联系...)

正解:先排序——第一关键字:L 从小到大;第二关键字:R 从大到小

答案就是R的最长不上升子序列

要点:

1)我把R倒过来存的(好机智哈哈哈),所以就是求【不严格的最长上升子序列】

2)lower_bound和upper_bound一定要分清楚再用(感谢LYT小朋友的博客,这里推荐一下:https://blog.csdn.net/CQBZLYTina/article/details/81122583

总结

比较充实的一天(不过依然没练多少字、没看多少书、没做多少题OTZ)

老师说明天就要开始讲课了(看了课表,有点难度 /瑟瑟发抖)

加油

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.m或d论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 、1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值