赶进度赶进度,丢个代码两三句备注一下完事了. day1: 前面两道题没实际写代码怕印象不深所以描述一下大意. T1: 题目大意:给出两个数&.|.^的结果(可能只给出其中某一项或者某两项),求这两种数有多少种选取情况. 关键点是讨论无限解.只给出^和只给出&的情况无法确定最高位的1在哪里所以解是无穷个. 其它情况只要把给出的数据转化成二进制一位一位讨论就行了. T2: 题目大意:一开始存在一个空集A.有四种操作,给出一个集合B使A成为与B的交集或并集,以及让A中的所有元素加一或者减一.要求…
2019.8.3 [HZOI]NOIP模拟测试12 C. 分组 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 刚看这题觉得很难,于是数据点分治 k只有1和2两种,分别讨论: k=1:根据人类直觉,不难想到一种贪心策略:从前往后扫,若扫到的数能加入当前这段就加入,否则再开一段新的. 于是你就WA了... 题目要求字典序最小,而我们的策略会让当前段尽可能长,所以划分点会靠后.例如:1 2 3 4 5,可以分为{1},{2,3,4},{5}三段,而我们的策略得到的答案…
2019.8.3 [HZOI]NOIP模拟测试12 B. 数颜色 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 数据结构学傻的做法: 对每种颜色开动态开点线段树直接维护 操作一区间查询 操作二转化为单点修改 常数有点大,需要稍微卡常. 正解: 对每种颜色开vector存储出现位置(下标),可以发现每种颜色出现位置满足单调性,操作一直接二分找到这段区间,操作二找到两个位置修改. Code: #include <bits/stdc++.h> using names…
2019.8.3 [HZOI]NOIP模拟测试12 A. 斐波那契(fibonacci) 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 找规律 找两个节点的lca,需要能快速根据编号求出父亲的编号. 斐波那契数列:1.2.3.5.8.13.21... 第10对兔子的父节点:斐波那契数列中小于10的最大项为8,所以第10对兔子的父节点为10-8=2. 很容易理解:第5个月时,共有8对兔子(斐波那契第5项),到了第6个月时,共13对兔子.多出的5对兔子,一定是已经成…
T1 补票 Ticket 没什么好说的,不讲了 T2 删数字 Number 很后悔的是其实考场上不仅想出了正解的方程,甚至连优化都想到了,却因为码力不足只打了\(O(n^2)\)暴力,甚至还因为细节挂成了\(40\ pts\) 以后还是应该多写一下码农题 规定一下,下面的\(j\)没有特殊说明,取值范围默认在\(1, i - 1\) 考虑什么情况是合法的,首先最后对答案有贡献的元素组成的序列一定是严格上升的,即\(a_i > a_j\) 然后考虑还有没有别的限制呢 放一个图 看到我们的对答案有贡…
\(CSP\)凉心模拟^_^ --题源\(lqx.lhc\)等各位蒟蒻 题目名称 比赛 传递消息 开关灯 源文件名 \(competition.cpp\) \(message.cpp\) \(light.cpp\) 输入文件名 \(competition.in\) \(message.in\) \(light.in\) 输出文件名 \(competition.out\) \(message.out\) \(light.out\) 测试点时限 \(1s\) \(1s\) \(2s\) 内存限制 \…
初赛需要的知识点整理如下: (1)计算机的硬件组成与基本常识 (2)单位/进制的转换 (3)进制/逻辑运算相关 (4)概率与期望 (5)排序的各种性质 (6)简单数据结构的使用(栈.队列.链表等) (7)简单树论和图论,各种图的性质 (8)CSP竞赛相关 (9)计算机语言/软件相关 (10)时间复杂度的计算 (11)时间点/时事/荣誉奖项相关 (12)简单计数(字符串.图论等) (13)网络协议相关 (14)其它各种拼人品的题 以上选择. (1)复杂计数 (2)逻辑推理相关 (3)手模各种算法…
题目描述 Description 精灵心目中亘古永恒的能量核心崩溃的那一刻,Bzeroth 大陆的每个精灵都明白,他们的家园已经到了最后的时刻.就在这危难关头,诸神天降神谕,传下最终兵器——潘少拉魔盒.然而当精灵们准备打开魔盒时,魔盒的守护灵出现在精灵们面前:“如果你们想要拯救世界,必须要先解决这个困难的问题:定义一个 N 阶数列 A 为神奇数列当且仅当对所有2≤i≤N−1 ,都有 Ai−1+Ai+1≥2×Ai.现在有一个N阶正整数列B ,请计算将 B 数列均匀随机打乱之后,得到的数列是神奇数列…
题目 这里必须标记一下那个傻逼问题,再不解决我人就没了! 先放一个 $T3$ $20$ 分暴力 #include<bits/stdc++.h> #define rep(i,x,y) for(int i=(x);i<=(y);++i) #define dwn(i,x,y) for(int i=(x);i>=(y);--i) #define rep_e(i,u) for(int i=hd[u];i;i=e[i].nxt) #define lc tr[o].l #define rc tr…
今天模拟赛题目 纯考输入的傻逼题,用$scanf$用到思想僵化的我最终成功被$if$大法爆$0$了(这题只有一组$100$分数据). 输入后面那个$(+1/2)$很难$if$判断,所以我们要判两个字符串中间空的是空格还是换行.$getchar$和$cin.getline$都可以做到. 会输入基本上就做完了.至于题面的意思,也比较绕,但想想就明白了,飞机来回两次飞行一次是顺着地球自转.一次是逆着地球自转,所以时间可能一长一短. 根据“假设飞机来回飞行时间相同,求飞机的飞行时间”一句话,结合样例,可…