B. Phoenix and Beauty(贪心构造)
\(给定序列长n的数组和k。完美数组的定义是数组中每一个连续k项的子段和为定值\)
\(现在要求插入一些数使得数组满足条件,输出你构造的新数列.\)
\(\color{Red}{---------------------分割线!!hehehe----------------------}\)
\(这题其实很友好了,在原题中一直提醒你不必构造最短的数列!!!这意味着有方法可以很简单的构造出来。\)
\(当数组中数的种类大于k是一定不能构造的,那我们现在考虑小于k的情况。(下面的数组a是假定构造完的数列)\)
\(定值为a[1]到a[k]的子段和,说明a[2]到a[k+1]也等于这个定值,所以a[k+1]==a[1]\)
\(那么现在很简单,我们只需要a[1]到a[k]就可以一直往后构造(一个循环节)\)
\(a[1]到a[k]用原数组中互不相同的数字填充,不够的话你随便添加什么都可以啦~然后就一直构造n次......\)
#include <bits/stdc++.h>
using namespace std;
int n,k,t;
int a[10009],vis[109],tt[10009];
int main()
{
cin>>t;
while(t--)
{
memset(vis,0,sizeof(vis));
cin>>n>>k;
int num=0;
for(int i=1;i<=n;i++)
{
cin>>a[i];
if(vis[a[i]]==0)
vis[a[i]]=1,tt[++num]=a[i];
}
if(num>k) cout<<-1;
else
{
for(int i=num+1;i<=k;i++) tt[i]=tt[i-1];
for(int i=k+1;i<=9999;i++) tt[i]=tt[i-k];//构造n次就够了,这里我直接暴力9999
cout<<9999<<endl;
for(int i=1;i<=9999;i++) cout<<tt[i]<<" ";
}
cout<<endl;
}
}
B. Phoenix and Beauty(贪心构造)的更多相关文章
- 贪心/构造/DP 杂题选做Ⅲ
颓!颓!颓!(bushi 前传: 贪心/构造/DP 杂题选做 贪心/构造/DP 杂题选做Ⅱ 51. CF758E Broken Tree 讲个笑话,这道题是 11.3 模拟赛的 T2,模拟赛里那道题的 ...
- 贪心+构造 Codeforces Round #277 (Div. 2) C. Palindrome Transformation
题目传送门 /* 贪心+构造:因为是对称的,可以全都左一半考虑,过程很简单,但是能想到就很难了 */ /************************************************ ...
- 贪心/构造/DP 杂题选做
本博客将会收录一些贪心/构造的我认为较有价值的题目,这样可以有效的避免日后碰到 P7115 或者 P7915 这样的题就束手无策进而垫底的情况/dk 某些题目虽然跟贪心关系不大,但是在 CF 上有个 ...
- 贪心/构造/DP 杂题选做Ⅱ
由于换了台电脑,而我的贪心 & 构造能力依然很拉跨,所以决定再开一个坑( 前传: 贪心/构造/DP 杂题选做 u1s1 我预感还有Ⅲ(欸,这不是我在多项式Ⅱ中说过的原话吗) 24. P5912 ...
- CF R638 div2 F Phoenix and Memory 贪心 线段树 构造 Hall定理
LINK:Phoenix and Memory 这场比赛标题好评 都是以凤凰这个单词开头的 有凤来仪吧. 其实和Hall定理关系不大. 不过这个定理有的时候会由于 先简述一下. 对于一张二分图 左边集 ...
- Codeforces Round #301 (Div. 2)(A,【模拟】B,【贪心构造】C,【DFS】)
A. Combination Lock time limit per test:2 seconds memory limit per test:256 megabytes input:standard ...
- Codeforces 1082D Maximum Diameter Graph (贪心构造)
<题目链接> 题目大意:给你一些点的最大度数,让你构造一张图,使得该图的直径最长,输出对应直径以及所有的边. 解题分析:一道比较暴力的构造题,首先,我们贪心的想,要使图的直径最长,肯定是尽 ...
- hdu 4982 贪心构造序列
http://acm.hdu.edu.cn/showproblem.php?pid=4982 给定n和k,求一个包含k个不相同正整数的集合,要求元素之和为n,并且其中k-1的元素的和为完全平方数 枚举 ...
- Codeforces Round #335 (Div. 2) D. Lazy Student 贪心+构造
题目链接: http://codeforces.com/contest/606/problem/D D. Lazy Student time limit per test2 secondsmemory ...
随机推荐
- SpringMVC框架详细教程(二)
创建动态Web项目 1.创建动态Web项目: 打开Eclipse,在Package Explorer右击,创建项目,选择动态Web项目(Dynamic Web Project). 填写项目名称,并选择 ...
- 通过Powershell检查SMTP地址是否被检测网站列入黑名单
通常,我们可能因为某些用户发送了一些非常规邮件,邮件出口地址被一些权威网站列入黑名单,导致大量业务邮件无法正常发送.这时候,我们可以通过powershell写一些关于IP地址检测的脚本,并列入计划任务 ...
- 事务的传播属性及隔离级别 Spring
事务的传播属性(Propagation) REQUIRED ,这个是默认的属性 Support a current transaction, create a new one if none exis ...
- [总结]Floyd算法及其应用
目录 一.Floyd算法 二.Floyd算法的应用 1. 传递闭包 例1:P2881 [USACO07MAR]排名的牛Ranking the Cows 例2:P2419 [USACO08JAN]牛大赛 ...
- Nexus3 集成 crowd 插件
公司使用的软件开发和协作工具为 Atlassian 系列软件,所以统一使用 crowd 来实现统一登录(SSO). crowd 配置 具体操作细节见我之前写的 Atlassian 系列软件安装(Cro ...
- jquery的焦点图片无限循环关键思维
在循环的时候,关键的是按(下一页按钮)到最后一页的时候和按(上一页按钮)到到第一页的时候如何转换: 首先必须知道3个js方法,prepend().append()和clone(); prepend() ...
- PAS
一.概念 二.安装 打开Delphi,在主菜单上选择Component,单击Install Component,出现图所示的对话框.有两个选择,装到已经存在的包里面和装到新的包里面.我们选择后者,单击 ...
- 微信小程序 —搜索框
wxSearch优雅的微信小程序搜索框 一.功能 支持自定义热门key 支持搜索历史 支持搜索建议 支持搜索历史(记录)缓存 二.使用 1.将wxSearch文件夹整个拷贝到根目录下 2.引入 // ...
- linux常用命令--打包和压缩文件
bunzip2 file1.bz2 解压一个叫做 'file1.bz2'的文件 bzip2 file1 压缩一个叫做 'file1' 的文件 gunzip file1.gz 解压一个叫做 'file1 ...
- 百度智能云虚拟主机 Typecho 分类功能失效 | 开启伪静态地址
出现的问题 $this->is() 方法失效,无法正确判断 archive.category.tags 页面类型. 点击分类页面.归档页面时,虽然 URL 是正确的,但网页内容却是 index. ...