HGOI20180822 五校联考卷
T1
【题目意思】给出下列程序片段,预测程序运行结果
输入文件为T(T<=200)组数据,每组数据有个n(n<=1014)
输出文件为T行,每行一个数据,表示fun(n)的值
simple input: simple output:
唯一分解定理可知:
所以
所以,
深入分析发现首先ai和bi中必然有一个是ci而且另外一个的取值范围一定是[0,ci]之间
所以排列组合一下就是2ci+1种可能,对于每种可能的情况答案就是
注意到程序只记录一遍而且存在平方数的存在,这样我们的答案就是这样
T2
【题目大意】 给出一个序列长度为n(n<=1000)有且仅有数字1-8组成,求出一个最长的子序列满足
1.子序列中相同元素排在一起
2.数字1-8各自出现的次数相差不多于1(最多相差1),没出现的按照0计算。
simple input: simple output
# include<bits/stdc++.h>
using namespace std;
int f[][][];//f[前i个数字,每个最少出现个数,选取的状态]=最长子序列的长度
int a[],ans,n;
void dfs(int w,int v,int i)
{
if (w==) {
int lastv=v-(<<(-a[i]));
int cnt=;
for (int k=i-;k>=;k--)
{
f[i][cnt][v]=max(f[i][cnt][v],f[k][cnt][lastv]+cnt);
f[i][cnt-][v]=max(f[i][cnt-][v],f[k][cnt-][lastv]+cnt);
if (a[k]==a[i]) cnt++;
if (cnt>) return;
}
return;
}
if (w!=a[i]) dfs(w+,v*,i);
dfs(w+,v*+,i);
}
int main()
{
scanf("%d",&n);
memset(f,,sizeof(f));
for (int i=;i<=n;i++) scanf("%d",&a[i]);
for (int i=;i<=;i++) f[][][i]=;
for (int i=;i<=;i++) f[][i][]=;
for (int i=;i<=n;i++) {
dfs(,,i);
for (int j=;j<=;j++)
ans=max(ans,f[i][j][]);
}
printf("%d\n",ans);
return ;
}
HGOI20180822 五校联考卷的更多相关文章
- 【五校联考1day2】JZOJ2020年8月12日提高组T2 我想大声告诉你
[五校联考1day2]JZOJ2020年8月12日提高组T2 我想大声告诉你 题目 Description 因为小Y 是知名的白富美,所以自然也有很多的追求者,这一天这些追求者打算进行一次游戏来踢出一 ...
- 【五校联考1day2】JZOJ2020年8月12日提高组T1 对你的爱深不见底
[五校联考1day2]JZOJ2020年8月12日提高组T1 对你的爱深不见底 题目 Description 出乎意料的是,幸运E 的小R 居然赢了那个游戏.现在欣喜万分的小R 想要写一张明信片给小Y ...
- 五校联考 running (欧拉函数)
题面 \(solution:\) 讲真吧,这道题真的出得,嗯,太恐怖了.考场上这道题真的把我看懵了,这道题以前是见过的,但欧拉函数?我学过吗?一道容斥都要超时的题目,我都要为我自己点根香了,拿着gcd ...
- 【五校联考3day2】C
題意: 現有一平面直角坐標系,有n個點,每一個點必須向某一個方向發射射線,且任意一條射線必須與某一條坐標軸平行.定義一種發射射線的方案是合法的,則方案必須滿足: 1.沒有一條射線交叉 2.沒有一條射線 ...
- 五校联考R1 Day1T3 平面图planar(递推 矩阵快速幂)
题目链接 我们可以把棱柱拆成有\(n\)条高的矩形,尝试递推. 在计算的过程中,第\(i\)列(\(i\neq n\))只与\(i-1\)列有关,称\(i-1\)列的上面/下面为左上/左下,第\(i\ ...
- 五校联考R1 Day2T2 矩阵matrix(容斥)
题目链接 容易想到容斥,但是很恶心,因为要对行和列都容斥,然后行+列又要容斥.. 于是得到\(O(nm\log)\)的做法. 就有70分了: #include <cstdio> #incl ...
- 五校联考模拟赛Day2T2矩阵(容斥原理)
题意 $n * m$的网格,对其进行黑白染色,问每一行每一列至少有一个黑格子的方案数. Sol 考场上只会$n^3$的dp,还和指数级枚举一个分qwq 设$f[i][j]$表示到了第$i$行,已经有$ ...
- NOIP2016提高A组五校联考4总结
坑爹的第一题,我居然想了足足3个小时,而且还不确定是否正确. 于是,我就在这种情况下心惊胆跳的打了,好在ac了,否则就爆零了. 第二题,树形dp,本来差点就想到了正解,结果时间不够,没打完. 第三题, ...
- 【NOIP2016提高A组五校联考4】square
题目 分析 首先,设\(f_{i,j}\)表示最大的以(i,j)为左下角的正方形的边长. 转移显然,\(f_{i,j}=\max(f_{i-1,j},f_{i,j-1},f_{i-1,j-1})+1\ ...
随机推荐
- 【LeetCode92】Reverse Linked List II★★
题目描述: 解题思路: 题目大意:给定一个链表,反转第m到第n个结点部分,m.n满足1 ≤ m ≤ n ≤ length of list. 解题思路参照LeetCode206题,用迭代法,不过要注意以 ...
- MongoDB 安装及副本集简单操作
安装MongoDB 3.4 # 查看现有yum源 [root@localhost ~]# ll /etc/yum.repos.d/ total 36 -rw-r--r--. 1 root root 1 ...
- debian系统下改语言设置
debian系统下改语言设置 安装debian 的时候选择了中文zh_CN_UTF-8,然后进系统后想换成en_US_UTF-8 可以使用一下命令选择:找到需要的语言 确定即可 dpkg-reconf ...
- SSISDB5:使用TSQL脚本执行Package
SSISDB 系列随笔汇总: SSISDB1:使用SSISDB管理Package SSISDB2:SSIS工程的操作实例 SSISDB3:Package的执行实例 SSISDB4:当前正在运行的Pac ...
- 设计模式 笔记 桥接模式 Bridge
//---------------------------15/04/15---------------------------- //Bridge 桥接模式----对象结构型模式 /* 1:意图:将 ...
- Java中的Calendar日历用法详解
第一部分 Calendar介绍 public abstract class Calendar implements Serializable, Cloneable, Comparable<Cal ...
- git 报错 error: insufficient permission for adding an object to repository database ./objects
参照:http://stackoverflow.com/questions/1918524/error-pushing-to-github-insufficient-permission-for-ad ...
- kubernetes 网络故障遇见的坑
1.记录一下自己搭建kubernetes 集群遇见的坑. 过程是我学技术以来最大的bug,处处都是坑,稍微写成一点, 就完全起不来, 起不来之后, 还找不到故障点, 郁闷之极. 后续会慢慢分享给大家. ...
- Runtime.getRuntime().addShutdownHook(Thread thread) 程序关闭时钩子,优雅退出程序
根据 Java API, 所谓 shutdown hook 就是已经初始化但尚未开始执行的线程对象.在Runtime 注册后,如果JVM要停止前,这些 shutdown hook 便开始执行.也就是在 ...
- 一、Unity Editor自定义菜单
官方文档:https://unity3d.com/cn/learn/tutorials/topics/interface-essentials/unity-editor-extensions-menu ...