博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Finite Encyclopedia of Integer Sequences
阅读量:5101 次
发布时间:2019-06-13

本文共 1949 字,大约阅读时间需要 6 分钟。

Time limit : 2sec / Memory limit : 256MB

Score : 800 points

Problem Statement

In Finite Encyclopedia of Integer Sequences (FEIS), all integer sequences of lengths between 1 and N (inclusive) consisting of integers between 1 and K (inclusive) are listed.

Let the total number of sequences listed in FEIS be X. Among those sequences, find the (X⁄2)-th (rounded up to the nearest integer) lexicographically smallest one.

Constraints

  • 1≤N,K≤3×105
  • N and K are integers.

Input

Input is given from Standard Input in the following format:

K N

Output

Print the (X⁄2)-th (rounded up to the nearest integer) lexicographically smallest sequence listed in FEIS, with spaces in between, where X is the total number of sequences listed in FEIS.


Sample Input 1

Copy
3 2

Sample Output 1

Copy
2 1

There are 12 sequences listed in FEIS: (1),(1,1),(1,2),(1,3),(2),(2,1),(2,2),(2,3),(3),(3,1),(3,2),(3,3). The (12⁄2=6)-th lexicographically smallest one among them is (2,1).


Sample Input 2

Copy
2 4

Sample Output 2

Copy
1 2 2 2

Sample Input 3

Copy
5 14

Sample Output 3

Copy
3 3 3 3 3 3 3 3 3 3 3 3 2 2

 

题解:偶数的时候很好弄,输出k/2,k...k,奇数的时候,对与k/2.k/2 ...k/2 这个序列 里中间最近,与中间相差n/2 ( or )个,即往前模拟

code:

#include 
using namespace std;typedef long long ll;const int N = 3e5 + 10;const int mod = 1e9 + 7;int a[N];int main(){ int n,k; scanf("%d%d",&k,&n); if(k&1) { for(int i = 1;i <= n;i++) a[i] = (k+1)/2; int m = n; for(int i = 1;i <= n/2;i++) { if(a[m] == 1) m--; else { a[m]--; for(int j = m + 1;j <= n;j++) a[j] = k; m = n; } } for(int i = 1;i <= m;i++) printf("%d%c",a[i],i == m?'\n':' '); } else { for(int i = 1;i <= n;i++) printf("%d%c",i == 1?k/2:k,i == n?'\n':' '); } return 0;}

 

转载于:https://www.cnblogs.com/lemon-jade/p/9417407.html

你可能感兴趣的文章
【ASP.NET】演绎GridView基本操作事件
查看>>
ubuntu无法解析主机错误与解决的方法
查看>>
尚学堂Java面试题整理
查看>>
08-【jsp重点】
查看>>
小记:xml画一个爱心。
查看>>
MySQL表的四种分区类型
查看>>
7.26
查看>>
dll--二进制层面的复用
查看>>
linux 压缩/解压缩/打包命令
查看>>
守护进程
查看>>
CLR 关于强命名程序集 .
查看>>
[BZOJ 3489] A simple rmq problem 【可持久化树套树】
查看>>
idea 导入eclipse play1.2.7项目
查看>>
如何制作并更改项目icon文件
查看>>
设计模式:迭代器模式(Iterator)
查看>>
cmd批处理常用符号详解
查看>>
关于给构造函数传达参数方法
查看>>
mysql忘记密码时如何修改root用户密码
查看>>
STM32单片机使用注意事项
查看>>
在linux中出现there are stopped jobs 的解决方法
查看>>