cf 1305 E. Kuroni and the Score Distribution
题目传送门:E. Kuroni and the Score Distribution
题目大意:给n和m,输出n个数,这些数里必须要有m对a[i]+a[j]==a[k] ( i < j < k )
题解:(这里的a[i]不是题目意思中的a[i])分两种情况:
1. m==0 直接输出n个递增的奇数即可;
2. m!=0; 先打个表找出1~q(q<=n)共有多少对满足i+j==k记录在数组a中,然后找到小于等于m的第一个x;如果x>n或者a[n]<m,输出-1。
否则,输出1到x。如果小于m还差m-a[x]个,x++, 自己写几个数可以发现a[i]-a[i-1]=(i-1)/2; 令y=x+(x-1)/2; y每加2,就会少一对满足条件的,找到y输出。然后判断还差几个数没有输出。输出n-x个数这些数都比前一个大y+1即可不出现满足要求的。
1 #include<bits/stdc++.h>
2 using namespace std;
3
4 int a[100100];
5
6 int main()
7 {
8 int n,m;
9 cin>>n>>m;
10 a[1]=0;a[2]=0,a[3]=1,a[4]=2;
11 for(int i=5;i<=n;i++){
12 a[i]=a[i-1]+(i-1)/2;
13 if(a[i]>m) break;
14 }
15 int k=-1,l=0;
16 for(int i=1;i<=n;i++){
17 if(a[i]>=m){
18 k=i;
19 break;
20 }
21 }
22 if(m==0){
23 int t=0,ans=1;
24 for(int i=0;i<n;i++){
25 ans+=2;
26 printf("%d ",ans);
27 }
28 return 0;
29 }
30 if(k>n||k==-1){
31 cout<<-1<<endl;
32 return 0;
33 }
34 int flag=0;
35 if(a[k]>m) k--,flag=1;
36 for(int i=1;i<=k;i++){
37 printf("%d ",i);
38 }
39 int x=k/2,y=k;
40 if(flag){
41 y++;
42 while(a[k]+x>m) x--,y+=2;
43 printf("%d ",y);
44 k++;
45 }
46 n-=k;
47 int t=y+1,ans=y;
48 for(int i=0;i<n;i++){
49 ans+=t;
50 printf("%d ",ans);
51 }
52 return 0;
53 }
cf 1305 E. Kuroni and the Score Distribution的更多相关文章
- CF 1305E. Kuroni and the Score Distribution
题目大意:题目给定两个数n和m(1<=n<=5000,0<=m<=1e9)要求构造一个数列A,A中元素 大于等于1,小于等于1e9且满足严格递增 满足ai+aj=ak的(i,j ...
- Codeforces 杂题集 2.0
记录一些没有写在其他随笔中的 Codeforces 杂题, 以 Problemset 题号排序 1326D2 - Prefix-Suffix Palindrome (Hard version) ...
- Linux command line exercises for NGS data processing
by Umer Zeeshan Ijaz The purpose of this tutorial is to introduce students to the frequently used to ...
- Scoring and Modeling—— Underwriting and Loan Approval Process
https://www.fdic.gov/regulations/examinations/credit_card/ch8.html Types of Scoring FICO Scores V ...
- 2016CVPR论文集
http://www.cv-foundation.org/openaccess/CVPR2016.py ORAL SESSION Image Captioning and Question Answe ...
- CVPR2016 Paper list
CVPR2016 Paper list ORAL SESSIONImage Captioning and Question Answering Monday, June 27th, 9:00AM - ...
- ProbS CF matlab源代码(二分系统)(原创作品,转载注明出处,谢谢!)
%ProbS clear all;%% 数据读入与预处理 data = load('E:\network_papers\u1.base');test = load('E:\network_papers ...
- CF Round#240题解
第一次参加CF的比赛,MSK19.30,四个小时的时差真心累,第一次CODE到这么夜-- 一开始做了A,C两题,后来做B题的时候我体力和精神集中度就很低了,导致一直WA在4-- 今天起床后再刷B,终于 ...
- 常见的概率分布类型(Probability Distribution)
统计学中最常见的几种概率分布分别是正态分布(normal distribution),t分布(t distribution),F分布(F distribution)和卡方分布(χ2 distribut ...
随机推荐
- scaffoldingTools
脚手架工具 脚手架工具概要(前端工程化的发起者) 脚手架的本质作用:创建项目基础架构.提供项目规范和约定 相同的组织结构 相同的开发规范 相同的模块依赖 相同的工具配置 相同的基础代码 举例:IDE创 ...
- 【Linux】saltstack 安装及简单使用
准备三台server,一台为master(10.96.20.113),另两台为minion(10.96.20.117,10.96.20.118) 主机名(master.minion1.minion2) ...
- 使用CDN访问免备案网站
如何使用CDN绕过服务器域名备案 前言 不得不说,大陆需要备案,时间真的有点长,至少得5天~20天起步,对于我们这些火急火燎的站长还是比较难受的.这里教大家如何使用cdn绕过备案, 访问速度很快,亲测 ...
- 天天用SpringBoot居然还不知道它的自动装配的原理?
引言 最近有个读者在面试,面试中被问到了这样一个问题"看你项目中用到了springboot,你说下springboot的自动配置是怎么实现的?"这应该是一个springboot里面 ...
- 2021 Duilib最新入门教程(一)Duilib简介
目录 Duilib解决什么问题? 方案一.自己画界面 方案二.使用标准控件 方案三.使用Duilib框架 Duilib是什么? 先看下Duilib官方简介 再看下DirectUI 百度百科 比起介 ...
- CF76A Gift
题目描述 有一个国家有N个城市和M条道路,这些道路可能连接相同的城市,也有可能两个城市之间有多条道路. 有一天,有一伙强盗占领了这个国家的所有的道路.他们要求国王献给他们礼物,进而根据礼物的多少而放弃 ...
- DC-DC变换器,24v转5v稳压芯片,3A输出电流
在24V输入中,比较合适的LDO可以选择:PW6206,输出电压3V,3.3V,5V 输入电压最高40V,功耗也低4uA左右,采用SOT23-3封装. PW6206系列是一个高精度,高输入电压低静态电 ...
- ORB-SLAM2-tracking线程
tracking线程 Tracking线程的主要工作是从图像中提取ORB特征,根据上一帧进行姿态估计或者进行通过全局重定位初始化位姿,然后跟踪已经重建的局部地图,优化位姿,再根据一些规则确定新的关键帧 ...
- https://learnku.com/docs/go-blog/qihoo/6532 。 heap size went up to 69G, with maximum garbage collection (GC)
https://learnku.com/docs/go-blog/qihoo/6532 Use a Task Pool, a mechanism with a group of long-lived ...
- 2021年Web开发的7大趋势
技术发展日新月异,所以 Web 开发人员也需要及时了解行业最新的发展趋势. 全球有超过 17.4 亿个网站.在每一个细分领域都有无数企业争夺搜索引擎的排名前列位置.开发人员应该了解和发现更多创新的 W ...