csp-s m 80 题解
写在前面:(扯淡话)
这次考试是AB组分开考,但是觉得题目并不是很水,所以就来写一下题解,其实这次由于翘掉了午休,所以考试的前半部分还是比较困的(越做越清醒!)今天调完还是很有感触的!
正文:
T1 最长不下降子序列
这次首先一看以为是裸的数据结构优化dp,但是由于数据范围过大,而且数据产生过于诡异,我就愉快的发现循环节,然后搞他,40分钟切掉(只有74分),头铁没有对拍,但是在还剩一个小时的时候发现过不了对拍,就死命的调,由于本人过于脑小,没能发现开大循环节的奥妙,就失去26分,结束后加了3个字符就AC了!其实思维量不大(正解的思维量很大!)
T2 完全背包问题
考试的时候gp不会,就滚粗了!其实这是同于系最短路的裸题,但是由于自己不会,导致我死了!
于是来填坑:
关于同于系最短路的一点理解,其实就是用同余优化最短路,但是我们是用同于系最短路优化背包问题,主要解决的问题是:
$\sum_{i=1}^{n}a_ix_i=k$
主要流程就是:
首先选择一个最小的a作为base,然后我们就发现所有的a都可以用$ base*p+left $来算出来,那么我们就可以用f[i]表示mod mina的条件下余i的时候所能拼出的最小体积!其实我这里只是泛泛而谈,重点还是要自己理解!
我们使用同于系最短路就可以AC这道题
T3最近公共祖先
这道题是最有感触的,我在40分钟打完T1,看T2不会做就去干T3,然后就想出来了类似正解的解法,
我想的是线段树维护dfs序,在修改的时候使用线段树单点修改,然后询问的时候就是直接暴力往上跳,由于算法的局限性,导致我没办法想出来别的优化,于是就T40分,正解其实比较接近,但是我就是相反了,正解是维护修改的时候是区间修改,在查询的时候就是单点查询即可,这看似复杂度并没有变化,但是这有一个很好的性质,就是一旦这颗子树有一个黑点,那么即使有第二个黑点,也没有什么用处,我们利用这个性质就可以break,这是T40与AC的差距,其实我就是应该在想不出来的时候换个角度思考问题,就是思维只是接近正解,但是并不是正解,然后就是代码的事情了,其实如果我考试的时候打的是正解的话,可能好久都调不出来,而且根据后来调试的过程,很有可能WA 0
rp++
csp-s m 80 题解的更多相关文章
- 51Nod--1010 只包含235的数
51Nod: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1010 1010 只包含因子2 3 5的数 基准时间限制:1 ...
- 【bzoj4720】[NOIP2016]换教室
题目描述 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程.在可以选择的课程中,有2n节课程安排在n个时间段上.在第i(1≤i≤n)个时间段上,两节内容相同的课程同时在不同的 ...
- hdu不要62
Problem Description 杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer).杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来, ...
- Matrix(多线程dp)
Matrix Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...
- 【XSY2668】排列统计 DP
题目描述 给你一个长度为\(n\)的排列\(a\),每次要选择两个数,交换这两个数(这两个数可以相同).总共要交换\(k\)次. 最后要统计数列中有多少位置\(i\)满足\(\max_{j\leq i ...
- HDU 2089 - 不要62 - [数位DP][入门题]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2089 Time Limit: 1000/1000 MS (Java/Others) Memory Li ...
- hdu 5666 Segment 俄罗斯乘法或者套大数板子
Segment Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Problem ...
- 【uoj#310】[UNR #2]黎明前的巧克力 FWT
题目描述 给出 $n$ 个数,从中选出两个互不相交的集合,使得第一个集合与第二个集合内的数的异或和相等.求总方案数. 输入 第一行一个正整数 $n$ ,表示巧克力的个数.第二行 $n$ 个整数 $a_ ...
- [您有新的未分配科技点]数位dp:从懵X到板子(例题:HDU2089 不要62)
数位dp主要用来处理一系列需要数数的问题,一般套路为“求[l,r]区间内满足要求的数/数位的个数” 要求五花八门……比如“不出现某个数字序列”,“某种数的出现次数”等等…… 面对这种数数题,暴力的想法 ...
随机推荐
- 洛谷 P2145 [JSOI2007]祖码
题目描述 这是一个流行在Jsoi的游戏,名称为祖玛. 精致细腻的背景,外加神秘的印加音乐衬托,彷佛置身在古老的国度里面,进行一个神秘的游戏——这就是著名的祖玛游戏.祖玛游戏的主角是一只石青蛙,石青蛙会 ...
- 【C语言笔记】#define与typedef的区别
1.#define define是预处理指令,在编译时不进行任何检查,只进行简单的替换 宏定义的一般形式为: #define 宏名 字符串 这里所说的字符串是一般意义上的字符序列,不要和C语言中的字符 ...
- C、C++的Makefile模板
目录 Makefile模板 用法 编译C程序 编译C++程序 其他 Tips Makefile模板 CC = gcc LD = $(CC) TARGET = $(notdir $(CURDIR)) S ...
- JSON:JSON对象和JSON数组混排的复杂字符串
在java中的一个好用的JSON工具包:net.sf.json.JSONObject 和 net.sf.json.JSONArray 一 解析JSON对象和JSON数组类型混排的复杂字符串 举个例子: ...
- MySQL 数据库的设计规范
网址 :http://blog.csdn.net/yjjm1990/article/details/7525811 1.文档的建立日期.所属的单位.2.数据库的命名规范.视图.3.命名的规范:1)避免 ...
- node.js当中的http模块与url模块的简单介绍
一.http模块的简单介绍 node.js当中的http内置模块可以用于创建http服务器与http客户端. 1.引包 const http = require('http'); 2.创建http服务 ...
- 基于华为物联网IOT的应用开发 --- 基于.net 的SDK封装
最近,物联网的概念比较热门,一大批厂商抢着占领物联网的高低,包括有华为物联网.阿里云物联网.腾讯物联网.AWS物联网等等,无法一一列举,一般物联网包含设备侧开发.平台侧开发.应用侧开发,三个部分构成了 ...
- python学习-语言概述(一)
1.python的特点 python是一种面向对象.解释型.弱类型的脚本语言,它也是一种功能强大而完善的通用型语言. 解释性语言的特点:速度慢:源代码加密困难:跨平台:
- python学习-异常处理之捕获异常与抛出异常(七)
捕获异常 python完整的异常处理语法结构如下: 特别说明: 1.try块是必需的,except块和finally,当try块没有出现异常时,程序会执行else块 2.try块后只有一个except ...
- linux+jenkins+github+python持续集成
1.服务器上事先安装jenkins 参见:linux上war包方式安装Jenkins 2.新建一个自由风格的job,名字随意起 3.配置git(拉取github代码) 从github复制pytho ...