题目简化和分析:

因为要求长度最小,所以我们每个字符就应该发挥最大的价值,不会有没有作用的字符。

设有 \(x_1\) 个 \(c\) ,\(x_2\) 个 \(o\) ,\(x_3\) 个 \(d\) ,\(x_4\) 个 \(e\) ,\(x_5\) 个 \(f\) ,\(x_6\) 个 \(o\) ,\(x_7\) 个 \(r\) ,\(x_8\) 个 \(c\) ,\(x_9\) 个 \(e\) ,\(x_{10}\) 个 \(s\) 。(均为连续)

则子序列的种数为 \(\prod_{i=1}^{10} a_i\)

为了使得 \(\sum_{i=1}^{10} a_i\) 的值最小,种数又最大,我们就要使得 \(a_i\) 的值都相对平均。

Solution:

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef double db; const int N=1e5+50;
const int M=1e5+50;
const int Mod=1e9+7; inline ll read(){
ll x=0,f=1;
char ch=getchar();
while(ch<'0'||ch>'9'){
if(ch=='-')
f=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9'){
x=(x<<1)+(x<<3)+(ch^48);
ch=getchar();
}
return x*f;
} ll k; char c[15]={'c','o','d','e','f','o','r','c','e','s'};
ll res[15]={0,1,1,1,1,1,1,1,1,1,1}; ll sol(){
ll tot=1;
for(int i=1;i<=10;++i){
tot*=res[i];
}
return tot;
} int main()
{
k=read();
int cnt=0;
while(1){
if(sol()>=k) break;
cnt%=10;
res[++cnt]++;
}
for(int i=0;i<10;++i){
for(int j=1;j<=res[i+1];++j){
printf("%c",c[i]);
}
}
return 0;
}

随机推荐

  1. 西门子S7系列转以太网通讯处理器类型分析

    捷米特以太网通讯处理器用于西门子S7-200/SMART /S7-200/S7-300/S7-400/西门子数控840D.840DSL等PLC的以太网数据采集,支持工控领域内绝大多数SCADA软件,支 ...

  2. 你一定要用这个API管理工具,看完你就知道为什么了

    以下是经常发生在程序员之间的对话: 小张:你知道为什么程序员不喜欢写文档? 小王:因为代码就是最好的文档啊!谁还需要写那些冗长的说明呢? 小张:那你知道为什么程序员也不喜欢别人不写文档吗? 小王:当然 ...

  3. 4.6 x64dbg 内存扫描与查壳实现

    LyScript 插件中默认提供了多种内存特征扫描函数,每一种扫描函数用法各不相同,在使用扫描函数时应首先搞清楚不同函数之间的差异,本章内容将分别详细介绍每一种内存扫描函数是如何灵活运用,并实现一种内 ...

  4. Flutter ListView 不满屏 无法滚动

    场景: flutter ListView 在做上拉加载的时候,未list添加controller后,数据不满屏,无法滚动 解决: 未listview 设置: physics: const Always ...

  5. java根据配置文件读取值

    <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --> <dependency> ...

  6. test20230225考试总结(2023春 · 图论)

    前言 I hate questions that already exist!! 我讨厌原题!! 赛时得分明细: A B C D E F Total Rank 100 100 10 56 0 44 3 ...

  7. .Net Core 3.0 对 MongoDB 的多条件查询(两种)操作

    前言   在日常开发中,偶尔会用到 MongoDB 的数据操作,也花费了一些时间调试,因此在此处记录一下,共同进步. 废话少说,出招吧! 正文 2.1 准备工作 首先需要引入 .Net 平台链接 Mo ...

  8. 安装部署RabbitMQ

    前言 RabbitMQ是一款使用Erlang语言开发,实现AMQP(高级消息队列协议)的开源消息中间件.RabbitMQ的特点: 可靠性.支持持久化,传输确认,发布确认等保证了MQ的可靠性. 灵活的分 ...

  9. 【go笔记】使用标准库flag解析命令行参数

    前言 Go语言标准库中提供了一个包flag可以解析命令行参数. 示例代码:文件读取 package main import ( "fmt" "flag" &qu ...

  10. 调试linux内核(1): 环境准备和原理介绍

    开篇 现在流行的开源项目经历了长时间的开发, 积累了大量的代码, 想要一行一行地阅读代码去学习开源项目, 需要的时间成本是巨大的. 所以, 我们也需要用一种高效的方式去"阅读"代码 ...