其实……这篇是真咕了。

反思:

××我$T1$两个小时构造$xiebi$了(虽然我觉得如果干仨小时可能行?)

……如果$T1$用时过长的话那考试多半不行……

结果:

35
Miemeng 50

03:08:09
0

03:08:09
20

03:08:10
70

03:08:10

T1显然交的暴力……

题解:

T1

好题

构造一下,分分块就可以辣。

#include <iostream>
#include <cstring>
#include <cstdio>
#define N 111111 using namespace std;
int nn,un,dn;
int arr[N];
int epl[N];
void revset(int l,int r){
for(int i=l,j=r;i<=r;i++,j--)
arr[i]=j;
}
int main(){
int T;
cin>>T;
while(T--){
scanf("%d%d%d",&nn,&un,&dn);
if(un*dn>=nn && un+dn<=nn+1){
puts("Yes");
revset(nn-dn+1,nn);
if(un-1!=0){
int pl=(nn-dn)/(un-1),
pn=un-1,
prn=nn-dn-pl*pn;
for(int i=1;i<=pn;i++)
epl[i]=pl;
for(int i=1;i<=prn;i++)
epl[i]++;
// for(int i=1;i<=pn;i++)\
cout<<epl[i]<<" ";\
cout<<endl;
for(int i=1;i<=pn;i++)
epl[i]=epl[i]+epl[i-1];
for(int i=1;i<=pn;i++){
// cout<<epl[i-1]+1<<" "<<epl[i]<<endl;
revset(epl[i-1]+1,epl[i]);
}
}
for(int i=1;i<=nn;i++)
printf("%d ",arr[i]);
puts("");
}
else puts("No");
}
}

T2

性质题,通过找规律证明了有一段不连续的区间并求解。

至于证明请去模大佬的博客(右方翻友链)

#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio>
#define N 111111
#define LL long long using namespace std; int nn;
LL arr[N],
pre[N],
ans;
int main(){
scanf("%d",&nn);
for(int i=1;i<=nn;i++)
scanf("%lld",arr+i);
sort(arr+1,arr+nn+1);
for(int i=1;i<=nn;i++)
pre[i]=pre[i-1]+arr[i];
ans=pre[nn]-(arr[1]-1)/2;
for(int i=2;i<=nn;i++){
if((arr[i]-1)/2>pre[i-1])
ans-=(arr[i]-1)/2-pre[i-1];
}
printf("%lld\n",ans);
}

T3

二叉树计数可得$20$

正解$dp$

将树上的位置关系转化成子树的大小关系。

(显然我是水果的……)

#include <iostream>
#include <cstring>
#include <cstdio>
#define LL long long
#define N 888 using namespace std; const int Mod=1e9+7;
LL dp[N][N];
int pn,lin,minn[N],maxn[N]; int main(){
int T,a,b;
cin>>T;
while(T--){
memset(dp,0,sizeof dp);
scanf("%d%d",&pn,&lin);
for(int i=1;i<=pn;i++)
minn[i]=0,maxn[i]=pn;
for(int i=1;i<=lin;i++){
scanf("%d%d",&a,&b);
if(a<b){
// for (int i=1; i<x; ++i) mn[i]=max(mn[i],i-x);
maxn[a]=min(maxn[a],b-a-1);
}//minn[a]=max(minn[a],b-a-1);
else minn[b]=max(minn[b],a-b);
}
for(int i=1;i<=2*pn+1;i++)
dp[i][0]=1;
for(int i=pn;i>=1;i--){
for(int j=1;j<=pn;j++){
for(int k=minn[i];k<=min(maxn[i],j);k++){
if(j-1-k<0)break;
dp[i][j]=(dp[i][j]+dp[i+1][k]*dp[i+1+k][j-1-k]%Mod)%Mod;
}
}
}
printf("%lld\n",dp[1][pn]);
}
}

19-10-16-R的更多相关文章

  1. 2019.10.16&17小结

    话说也蛮久没写小结了,主要这两次考试失分严重,还是总结下吧. 10.16 T1 小奇挖矿2 100/0 [题目背景] 小奇飞船的钻头开启了无限耐久+精准采集模式!这次它要将原矿运到泛光之源的矿石交易市 ...

  2. 程序员的 Ubuntu 19.10 配置与优化指南

    原文地址:程序员的 Ubuntu 19.10 配置与优化指南 0x00 环境 CPU: Intel Core i9-9900k GPU: GeForce RTX 2070 SUPER RAM: DDR ...

  3. 10.16 NOIP模拟赛

    目录 2018.10.16 NOIP模拟赛 A 购物shop B 期望exp(DP 期望 按位计算) C 魔法迷宫maze(状压 暴力) 考试代码 C 2018.10.16 NOIP模拟赛 时间:2h ...

  4. A Newbie’s Install of Keras & Tensorflow on Windows 10 with R

    This weekend, I decided it was time: I was going to update my Python environment and get Keras and T ...

  5. [NOIP2018模拟赛10.16]手残报告

    [NOIP2018模拟赛10.16]手残报告 闲扯 炉石乱斗模式美滋滋啊,又颓到好晚... 上来T2先敲了树剖,看T1发现是个思博DP,然后没过大样例,写个暴力发现还是没过大样例!?才发现理解错题意了 ...

  6. 背水一战 Windows 10 (16) - 动画: ThemeAnimation(主题动画)

    [源码下载] 背水一战 Windows 10 (16) - 动画: ThemeAnimation(主题动画) 作者:webabcd 介绍背水一战 Windows 10 之 动画 PopInThemeA ...

  7. ERROR 2003 (HY000): Can&#39;t connect to MySQL server on &#39;10.16.115.101&#39; (111)

    ubuntu安装之后mysql,使用apt-get安装命令,默认为同意只本地访问 root@idata1:~/software# mysql -uroot -p123456 -h10.16.115.1 ...

  8. ERROR: openstack Error finding address for http://10.16.37.215:9292/v1/images: [Errno 32] Broken pipe

    Try to set: no_proxy=10.16.37.215 this should help 转自: http://askubuntu.com/questions/575938/error-i ...

  9. Ubuntu 19.10 发布 | 云原生生态周报 Vol. 24

    作者 | 木苏.进超.冬岛.元毅.心水.衷源 业界要闻 1.云原生编程语言 Pulumi 1.0 pulumi ,一款中立的开源云开发平台,Pulumi 支持多语言.混合云环境.完全可扩展.初期支持 ...

  10. [Linux] 在 Ubuntu 19.10 上开启 SSH 服务并允许远程登录

    在 Ubuntu 19.10 上安装 SSH,并开启服务 0.检查并确认系统当前是否已安装SSH: sudo ps -e | grep ssh 如果只有 ssh-agent 说明 ssh-server ...

随机推荐

  1. LUOGU P3919 【模板】可持久化数组(主席树)

    传送门 解题思路 给每一时刻建一棵线段树维护当前时刻的值,然后修改的时候直接修改,查询的时候直接查,记住查询完后一定要复制. 代码 #include<iostream> #include& ...

  2. 正则表达式r和re

    # coding:utf-8 import re print 'a\ws' print r'a\nb' # r'': 一般用在正则表达式中,称为原始字符串,作用是将Python语法中的反斜杠转义给 取 ...

  3. LightOJ-1214-Large Division-大数取余

    Given two integers, a and b, you should check whether a is divisible by b or not. We know that an in ...

  4. centos下 安装python相关

    centos 安装python相关 python3 https://blog.csdn.net/tanxiaob/article/details/78725301 yum -y install zli ...

  5. IO初步,字节输入流和字节输出流

    字节输出流 OutputStream(基类,抽象) 特点:写任意的文件 方法:写出数据的方法:write write(int b) 写出1个字节 -128~127之间,写的是一个ASCLL码的值 wr ...

  6. appium基础一:连接手机和appium-desktop定位元素

    一.获取手机信息 adb devices获取手机或模拟器的设备名 aapt dump badging xxxx.apk获取app的包名.入口等基本信息 如果想要知道手机原生携带的app的基本信息,首先 ...

  7. 面试系列九 es 提高查询效率

    ,es性能优化是没有什么银弹的,啥意思呢?就是不要期待着随手调一个参数,就可以万能的应对所有的性能慢的场景.也许有的场景是你换个参数,或者调整一下语法,就可以搞定,但是绝对不是所有场景都可以这样. 一 ...

  8. BezierCode 工具使用

    概要 今天无意间看到一个视频,发现了一款绘画Bezier 图形绘制并自动生成OC代码的神器, 因此马上先记录下. 之前一直很纠结如果程序员自己去绘制图片,久那么使用bezier 自己去画吗? 答案是: ...

  9. 编写Reduce处理逻辑

  10. apache日志配置一例,包括指定存储目录与格式、自动删除过期的日志文件

    有需要的朋友可以参考下(http://www.nanke0834.com) 1.vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 添加或修改为:复 ...