请选择 进入手机版 | 继续访问电脑版

12360技术网 - 专业IT技术发表平台

 立即注册  找回密码
查看: 240|回复: 4

Codeforces Round #614 (Div. 2) 解题报告

[复制链接]

16

主题

24

帖子

226

积分

中级会员

Rank: 3Rank: 3

积分
226
发表于 2020-1-26 13:25:42 | 显示全部楼层 |阅读模式
最近因为去考驾照了,所以615 Div.3也没参加,驾考挺简单的,可算再也不用见我们那个讨厌的教练了,顺利拿到了驾照。
A题
很简单,纯模拟,我算了下时间复杂度是够得,一开始WA了一次我以为时间复杂度有问题,仔细审查发现没毛病,于是又乱交了两次,连着WA了三次,最后自己找特殊数据测发现边界不对,一次是下边界出,另外一次是上边界,以后测试的时候要考虑到边界情况。
B题
其实这种题本质都是数学题,代码只是实现,盲猜结论过了,要好好学数学啊!
C题
想到BFS和DFS,有考虑到连着询问不该这么复杂,而且我对时间复杂度和空间复杂度的概念还不够清晰,写了半小时的DFS最后超时了,BFS和DFS还不能熟练的快速实现,而且经常会忘记回溯、做标记之类的。还需要重新再学一下。
这道题其实没那么复杂
只要检测输入点 对应的另外一行的 对应点 对应点的前一位 对应点的后一位 构造锁链即可;
想象成每有2个点都为1不能通过则锁链+1,锁链可以左斜 右斜 竖直。
我也不知道这叫什么算法,主要是要建立出这个模型,不断维护,才能满足询问次数可能为1e5的情况。
[code]#include using namespace std;typedef long long ll;const ll maxn = 1e5 + 5;int a[3][maxn]; int main(){        ios::sync_with_stdio(false);    cin.tie(0);        int n,q,x,y;        ll cnt=0;        memset(a,0,sizeof(a));        cin>>n>>q;        while(q--){                cin >> x >> y;                a[x][y] ^= 1;                if(a[x][y] == 1){                        cnt += a[3-x][y-1] + a[3-x][y] + a[3-x][y+1];                } else{                        cnt -= a[3-x][y-1] + a[3-x][y] + a[3-x][y+1];                }                cout




上一篇:Day_2,三大控件的学习
下一篇:《POJ3279 Fliptile》枚举+DFS(详解)
回复

使用道具 举报

0

主题

13

帖子

283

积分

中级会员

Rank: 3Rank: 3

积分
283
发表于 2020-1-28 16:40:35 | 显示全部楼层
楼主发贴辛苦了,谢谢楼主分享![www.12360.co]
回复

使用道具 举报

0

主题

9

帖子

199

积分

注册会员

Rank: 2

积分
199
发表于 6 天前 | 显示全部楼层
楼主太厉害了!楼主,I*老*虎*U![www.12360.co]
回复

使用道具 举报

0

主题

9

帖子

199

积分

注册会员

Rank: 2

积分
199
发表于 4 天前 | 显示全部楼层
这东西我收了!谢谢楼主![www.12360.co]
回复

使用道具 举报

0

主题

13

帖子

283

积分

中级会员

Rank: 3Rank: 3

积分
283
发表于 前天 20:17 | 显示全部楼层
楼主,我太崇拜你了![www.12360.co]
社区不能没有像楼主这样的人才啊!
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

12360技术网

GMT+8, 2020-2-17 20:22 , Processed in 0.297241 second(s), 47 queries .

本网站内容收集于互联网,Www.12360.Co不承担任何由于内容的合法性及健康性所引起的争议和法律责任。 欢迎大家对网站内容侵犯版权等不合法和不健康行为进行监督和举报。

© 2019-2020 Www.12360.Co

快速回复 返回顶部 返回列表