JZOJ2290. 【佛山市选2010】组合数计算

比赛时

一看到数学题就有一种厌倦感。不论如何,还是仔细思考吧,按照公式的直接求法显然时间会爆(听同学说有一种快速求阶乘的方法,但是对于这题肯定要高精度,太麻烦了)。间接入手,杨辉三角???时间复杂度和空间复杂度均为\(O(n^2)\),显然不行。有没有快速求组合数的方法呢,显然我除了杨辉三角一个都没有学。于是我开始找杨辉三角的其他规律——一无所获,大数学家都不能找到,蒟蒻的我肯定找不到。突然蹦出一个奇妙的想法,杨辉三角+暴力,因为题目保证答案在64位无符号整数取值范围内,于是便输出了一下杨辉三角,发现当n很大以后(\(\geq 1000\)左右),答案很大,几乎当\(m>20\)时,全都爆表了,于是我预处理\(n \leq 2000\)的组合数,其他暴力算,加了一点点小优化,比如说n=5,m=2。c(5,2)=(54)/(21),那么我们再算54的过程中,如果除21中的某个数没有余数就除,再标记一下除过了。另外,记得输出用%llu。骗了50分!!!

之后

有一个变态的数据——\(n=0,m=0\)特殊判断一下。我比赛时脑子卡壳,居然忘记加上\(if(n-m<m),m=n-m\)。一顿改良之后,骗了AC100!!!。正解——lucas,自闭改题中。

JZOJ2291. 【佛山市选2010】生成字符串

比赛时

我猜想是贪心或者DP,一下子想不出来,果断弃疗。我最不擅长这种区间DP。

之后

首先,简化题目,把相邻的相同的多个字符合成一个。设\(s\)表示合并之后的字符数组,\(f_{j,i}\)表示从第\(j\)个字符开始长度为\(i\)的字符串生成最小步数,。转移

  1. \(f_{j,i}=f_{j,i-1}(s_j==s_{j+i-1})\),因为这段字符串的第一个等于最后一个,所以他们有可能是在一起的,只用生成一次,中间再插入其他东西。

  2. \(f_{j,i}=min(f_{j,i},f_{j,k-j+1}+f_{k+1,(j-i+1)-(k+1)+1})(无条件)\),这个很容易理解吧,劈成两半。

    总结

遇到一些题目时,可以尝试简化题目。另外,我得加强一下我的区间DP了。

JZOJ2292. PPMM

比赛时

题目写着\(-231<x<231\),于是打了个权值线段树,因为有了取反的操作,所以如果不真的进行取反,答案就是要么取最大(取反次数为偶数时),要么取最小 (取反次数为奇数时),加入的时候如果取反次数为奇数,对加入的数取反即可,线段树维护最大和最小。想着能AC,结果10分。

之后

题目出错了!!!\(-2^{31}<x<2^{31}\),实际是这样的,坑人呀!!!我想了一个方法——两个堆,一个大根,一个小根,跟之前的线段树思想差不多,但是删除上会遇到麻烦,因为要知道它在堆中的位置。正解——单调队列,插入排序的思想,感觉这个时间复杂度太玄学了!!!自己的想法(虽然不想打)——离散化+权值线段树。

纪中集训2020.02.05【NOIP提高组】模拟B 组总结反思——【佛山市选2010】组合数计算,生成字符串 PPMM的更多相关文章

  1. 纪中集训2020.02.09【NOIP提高组】模拟B 组总结反思

    目录 JZOJ.1747[NOIP2014模拟11.5]无穷迷宫 比赛时 之后 总结 JZOJ1478.[NOIP2014模拟11.5]近似乘积 比赛时 之后 总结 JZOJ3926. [NOIP20 ...

  2. 纪中集训2020.02.03【NOIP提高组】模拟B 组总结反思——登机(board),游戏(game),分组(group)

    T1 JZOJ5535. 登机(board) 比赛时 一在题目列表里看到题目标题,就热血沸腾了,不知道为什么,老师居然放了一道之前做过的题目.我清楚地记得这题是DP,于是很快码了出来.讲一讲我的思路, ...

  3. 「中山纪中集训省选组D1T1」最大收益 贪心

    题目描述 给出\(N\)件单位时间任务,对于第\(i\)件任务,如果要完成该任务,需要占用\([S_i, T_i]\)间的某个时刻,且完成后会有\(V_i\)的收益.求最大收益. 澄清:一个时刻只能做 ...

  4. 纪中集训总结 && 新学期目标

    于是紧接着又发了第二篇. 关于这次去完纪中以后的感想,写完后总觉得少了些什么,因此就发一篇小目标集合来凑数补充一下吧. Part I:图论 这方面我去之前就是很有自信,事实证明像基础的最短路.生成树什 ...

  5. 纪中集训 Day 0?

    好吧昨天的等到今天才来写,现在超不想刷题,来写下blog吧= = 坐了近10H的火车终于来到了中山市 火车上在看空之境界,等有时间补下动画吧= = 到了宿舍各种不习惯(现在才发现还是母校好QAQ)然后 ...

  6. 纪中集训 Day 2

    今天(其实是昨天= =)早上起来发现好冷好冷啊= = 吃完饭就准备比赛了,好吧B组难度的题总有一道不知到怎么写QAQ 太弱了啊!!! 蒟蒻没人权啊QAQ 今天第4题不会写,在这里说说吧 题目的意思就是 ...

  7. 纪中集训 Day1

    今天早上起来吃饭,发现纪中伙食真的是太差了!!!什么都不热,早餐的面包还好,然后就迎来了美好的早晨= = 早上做一套题,T1T2果断秒,T3一看就是noi原题,还好看过题解会写,然后就愉快的码+Deb ...

  8. 【纪中集训】2019.08.02【NOIP提高组】模拟 A 组TJ

    \(\newcommand{\RNum}[1]{\uppercase\expandafter{\romannumeral #1\relax}}\) T1 一道可以暴力撵标算的题-- Descripti ...

  9. 纪中OJ 2019.02.15【NOIP提高组】模拟 B 组 梦回三国 比赛题解(第一个)

    声明 旁边的同学小 H(胡)对我说: “哟,比赛拿了 140,强!要知道,如果哥第三题 AC 了,哥就 230 了,你个废柴!!!(比赛实际分数 130 额呵)” 顿时,千万草泥马从我心中奔腾而过:你 ...

随机推荐

  1. Windows系统-cmd中的tracert命令

    大部分同学都是用的Linux系统来测试网络命令相关工具,我用Windows10系统来测试tracert.        tracert:也被称为Windows路由跟踪实用程序,在命令提示符(cmd)中 ...

  2. Go语言实现:【剑指offer】链表中环的入口结点

    ​该题目来源于牛客网<剑指offer>专题. 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null. Go语言实现: /** * Definition for sing ...

  3. 基于 Serverless Component 全栈解决方案 Ⅱ

    虽然之前的文章 基于 Serverless Component 的全栈解决方案 介绍了如何借助 Serverless Component 快速搭建 Restful API 后端服务 和 Vue.js ...

  4. idea快速创建一个类 实现一个接口

    一 创建一个接口类 二  点击接口名称 按alt + ent 三 选择implement interface 选项 完美!!!!!!!

  5. VFP9.0的GDI+类的使用

    GDI+你应该不会陌生吧,然而,在VFP里要使用这一技术,可不是一件容易的事,你得学习一大堆API函数.或许,一想到这,你已经望而却步了.不过,从现在起,这一技术不再是豪门旺族的专宠了,我们每一位Fo ...

  6. RFC笔记—IP Version 6 Addressing Architecture

    IP Version 6 Addressing Architecture,RFC4291 It includes the basic formats for the various types of ...

  7. 1138 - Trailing Zeroes (III) 二分

    1138 - Trailing Zeroes (III)   You task is to find minimal natural number N, so that N! contains exa ...

  8. 【全集】IDEA入门到实战

    课程介绍   IDEA是一款功能强悍.非常好用的Java开发工具,近几年编程开发人员对IDEA情有独钟.虽然IDEA功能很强大,但目前市面讲解的不细致.不系统,导致很多IDEA初学者要么无从下手,要么 ...

  9. axios中qs的使用

    首先qs是一个npm仓库所管理的包,可通过npm install qs命令进行安装. 地址: https://www.npmjs.com/package/qs qs.parse().qs.string ...

  10. 用C语言实现汉诺塔自动递归演示程序

    用C语言实现汉诺塔自动递归演示程序 程序实现效果 1.变界面大小依照输入递归数改变. 2.汉诺塔自动移动演示. 3.采用gotoxy实现流畅刷新. 4.保留文字显示递归流程 程序展示及实现 githu ...