最后一次了,允许自己混进榜里吧。

没有心态,原题不会做(真的忘了)

T2的搜索没有分。

「 零 · 迟 」:酷刑

只有在最后的时刻才开始意识到,一切的一切都已经晚了。

就在眼前了。没有机会了。

退役,告别OI,粉碎梦想,这,就是最严苛的酷刑。

生存,生存!

HZOI2018!所有人!

一年走来,我们还要继续走下去!

CSP-S,RP++

Hello,HEOI 2020

T1:Tiny Counting

容斥。所有合法四元组-有重复位置的四元组。

 #include<cstdio>
#include<algorithm>
using namespace std;
#define S 100005
int n,t[S],a[S],r[S],cnt[S];long long ans,totmn,totmx,lmn[S],rmn[S],lmx[S],rmx[S];
void add(int p){cnt[p]++;for(;p<=n;p+=p&-p)t[p]++;}
int ask(int p,int a=){for(;p;p^=p&-p)a+=t[p];return a;}
int main(){
freopen("a.in","r",stdin);freopen("a.out","w",stdout);
scanf("%d",&n);
for(int i=;i<=n;++i)scanf("%d",&a[i]),r[i]=a[i];
sort(r+,r++n);
for(int i=;i<=n;++i)a[i]=lower_bound(r+,r++n,a[i])-r;
for(int i=;i<=n;++i)lmn[i]=ask(a[i]-),add(a[i]),lmx[i]=i-cnt[a[i]]-lmn[i];
for(int i=;i<=n;++i)t[i]=cnt[i]=;
for(int i=n;i;--i)rmn[i]=ask(a[i]-),add(a[i]),rmx[i]=n-i+-cnt[a[i]]-rmn[i];
for(int i=;i<=n;++i)totmn+=rmn[i],totmx+=rmx[i];
ans=totmn*totmx;
for(int i=;i<=n;++i)ans-=lmn[i]*rmn[i]+lmx[i]*rmx[i]+lmn[i]*lmx[i]+rmn[i]*rmx[i];
printf("%lld\n",ans);
}

T2:Medium Counting

神仙dp。预计改不出来。

空字符是最小的,所以长度不够的串直接往后面塞空字符就行。(其实就是不用动)

dp[i][j][k][l]表示第i~j个串长度为k的后缀已经合法,且第k位都大于等于字符l。

复杂度$O(n^2L \times 26)$

T3:Huge Counting

原题。一部分简化一部分变难。

亏得我还写了那道题的题解

具体内容差不太多,只不过进制数变为2,而限制的不再是和而是每一个数而已,貌似不是特别难写。

 #include<bits/stdc++.h>
using namespace std;
#define mod 990804011
int k;long long dp[][],L[],R[],x[];
long long sch(int al,int st){
if(~dp[al][st])return dp[al][st];
long long ans=;
for(int i=;i<k;++i)if(!(st&<<i)||x[i]&1ll<<al-){
int nst=st;
for(int j=;j<k;++j)if(i!=j&&x[j]&1ll<<al-)nst^=st&<<j;
ans+=sch(al-,nst);
}
int nst=st;
for(int j=;j<k;++j)if(x[j]&1ll<<al-)nst^=st&<<j;
ans+=sch(al-,nst);
return dp[al][st]=ans%mod;
}
long long ask(){
for(int i=;i<k;++i)if(x[i]<)return ;
memset(dp,0xff,sizeof dp);
for(int i=;i<<<k;++i)dp[][i]=;
return sch(,(<<k)-);
}
int main(){
freopen("c.in","r",stdin);freopen("c.out","w",stdout);
int t;long long l,r;scanf("%d",&t);
while(t--){
scanf("%d",&k);
for(int i=;i<=k;++i)scanf("%lld%lld",&L[i],&R[i]);
long long ans=;
for(int i=;i<<<k;++i){
int cnt=;
for(int j=;j<k;++j)if(i&<<j)++cnt,x[j]=L[j+]-;else x[j]=R[j+]-;
ans+=ask()*(cnt&?-:);
}printf("%lld\n",(ans%mod+mod)%mod);
}
}

[考试反思]1114csp-s模拟测试115:零迟的更多相关文章

  1. [考试反思]0718 NOIP模拟测试5

    最后一个是我...rank#11 rank#1和rank#2被外校大佬包揽了. 啊...考的太烂说话底气不足... 我考场上在干些什么啊!!! 20分钟“切”掉T2,又27分钟“切”掉T1 切什么切, ...

  2. [考试反思]0814NOIP模拟测试21

    前两名是外校的240.220.kx和skyh拿到了190的[暴力打满]的好成绩. 我第5是170分,然而160分就是第19了. 在前一晚上刚刚爆炸完毕后,心态格外平稳. 想想前一天晚上的挣扎: 啊啊啊 ...

  3. [考试反思]0729NOIP模拟测试10

    安度因:哇哦. 安度因:谢谢你. 第三个rank1不知为什么就来了.迷之二连?也不知道哪里来的rp 连续两次考试数学都占了比较大的比重,所以我非常幸运的得以发挥我的优势(也许是优势吧,反正数学里基本没 ...

  4. [考试反思]0714/0716,NOIP模拟测试3/4

    这几天时间比较紧啊(其实只是我效率有点低我在考虑要不要坐到后面去吹空调) 但是不管怎么说,考试反思还是要写的吧. 第三次考试反思没写总感觉缺了点什么,但是题都刷不完... 一进图论看他们刷题好快啊为什 ...

  5. [考试反思]1109csp-s模拟测试106:撞词

    (撞哈希了用了模拟测试28的词,所以这次就叫撞词吧) 蓝色的0... 蓝色的0... 都该联赛了还能CE呢... 考试结束前15分钟左右,期望得分300 然后对拍发现T2伪了写了一个能拿90分的垃圾随 ...

  6. [考试反思]0909csp-s模拟测试41:反典

    说在前面:我是反面典型!!!不要学我!!! 说在前面:向rank1某脸学习,不管是什么题都在考试反思后面稍微写一下题解. 这次是真的真的运气好... 这次知识点上还可以,但是答题策略出了问题... 幸 ...

  7. [考试反思]0801NOIP模拟测试11

    8月开门红. 放假回来果然像是神志不清一样. 但还是要接受这个事实. 嗯,说好听点,并列rank#7. 说难听点,垃圾rank#18. 都不用粘人名就知道我是哪一个吧... 因为图片不能太长,所以就不 ...

  8. [考试反思]1003csp-s模拟测试58:沉淀

    稳住阵脚. 还可以. 至少想拿到的分都拿到了,最后一题的确因为不会按秩合并和线段树分治而想不出来. 对拍了,暴力都拍了.挺稳的. 但是其实也有波折,险些被卡内存. 如果内存使用不连续或申请的内存全部使 ...

  9. [考试反思]0816NOIP模拟测试23

    210 210 210 170 还可以.暴力打满就rk4了? 但不管怎么说,总算是在改完题之后理直气壮的写考试反思了. T1是个dp,说水也不太水.(当然某脸只要A掉了一道题就要说那是水题) 我的思路 ...

随机推荐

  1. 【MobX】391- MobX 入门教程(下)

    点击上方"前端自习课"关注,学习起来~ 三.MobX 常用 API 介绍 3. 修改可观察数据 在上一部分内容中,我们了解到,对可观察的数据做出反应的时候,需要我们手动修改可观察数 ...

  2. Win32_DiskDrive 硬盘 参数说明

    Availability  --设备的状态. BytesPerSector  --在每个扇区的物理磁盘驱动器的字节数. Capabilities  --媒体访问设备的能力阵列. CapabilityD ...

  3. 代码检查又一利器:ArchUnit

    Code Review总是让人又爱又恨,它可以帮助我们在提测之前发现很多代码中比较"丢人"的问题,但是,Code Review通常会比写代码更加耗费精力,因为你需要理解别人的代码, ...

  4. 据说60%的Java程序员不明白分布式一致性?这次彻底搞懂!

    前言 在计算机科学领域,分布式一致性是一个相当重要且被广泛探索与论证问题,首先来看三种业务场景. 1.火车站售票 假如说我们的终端用户是一位经常坐火车的旅行家,通常他是去车站的售票处购买车票,然后拿着 ...

  5. Ansible-上部

    Ansible概述 Ansible是一个配置管理系统configuration management systempython 语言是运维人员必须会的语言ansible 是一个基于python 开发的 ...

  6. Java 从入门到进阶之路(十五)

    在之前的文章我们介绍了一下 Java 中的接口,本章我们来看一下 Java 中类的多态. 在日常生活中,很多意思并不是我们想要的意思,如下: 1.领导:“你这是什么意思?” 小明:“没什么意思,意思意 ...

  7. 五分钟了解ES6对数值的扩展

    文章目录 数值的扩展(ES6) 1. 二进制八进制表示法 2. Number对象 3. Math对象 4. 指数运算符 5. Integer 数据类型 5.1 简介 5.2 运算 数值的扩展(ES6) ...

  8. tune kubernetes eviction parameter

    Highlight 本文会介绍kubernetes中关于集群驱逐的相关参数, 合理设置驱逐速率的考虑因素, 但是不会涉及node层面资源的驱逐阈值的设置. Basic 在kubernetes中, 如果 ...

  9. c++-多态和vptr指针

    多态的原理 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; class Parent { ...

  10. Java工作流引擎表单引擎之JS表单字段输入脚本验证

    关键字: 表单设计器, 字段验证. workflow,ccform, ccBPM. 工作流快速开发平台  工作流流设计  业务流程管理   asp.net 开源工作流bpm工作流系统  java工作流 ...