F. Rhyme scheme
题: https://nanti.jisuanke.com/t/41414
#include<bits/stdc++.h>
using namespace std;
typedef __int128 ll;
const int M=;
const int mod=1e9+;
ll dp[M][M];
int a[M];
int n; inline ll read() {
ll x = , f = ;
char c = getchar();
for (; !isdigit(c);c = getchar()) if (c == '-') f = -;
for (; isdigit(c); c = getchar()) x = x * + c - '';
return x * f;
}
ll dfs1(int pos,int up){
if(pos==n+)
return ;
if(~dp[pos][up])
return dp[pos][up];
ll sum=;
for(int i=;i<=up;i++){
sum+=dfs1(pos+,max(up,i+));
}
dp[pos][up]=sum;
return sum;
}
void dfs2(int pos,int up,ll r){
if(pos==n+){
for(int i=;i<=n;i++)
putchar(a[i]+'A');
puts("");
return ;
}
for(int i=;i<=up;i++){
int nowup=max(i+,up);
if(r<=dp[pos+][nowup]){
a[pos]=i;
dfs2(pos+,nowup,r);
break;
}
else
r-=dp[pos+][nowup];
}
}
int main(){
int t;
scanf("%d",&t);
for(int ca=;ca<=t;ca++){
scanf("%d",&n);
ll k=read();
for(int i=;i<M;i++)
for(int j=;j<M;j++)
dp[i][j]=-;
for(int i=;i<M;i++)
dp[n+][i]=;
// cout<<"!!"<<endl;
dfs1(,);
printf("Case #%d: ",ca);
dfs2(,,k);
}
return ;
}
F. Rhyme scheme的更多相关文章
- 2019上海网络赛 F. Rhyme scheme 普通dp
Rhyme scheme Problem Describe A rhyme scheme is the pattern of rhymes at the end of each line of a p ...
- The Preliminary Contest for ICPC Asia Shanghai 2019 F. Rhyme scheme(dp)
题意:给你一个n和k 要你找到长度为n 字典序第k小的字符串 定义一个字符串合法:第i的字符的范围只能是前i-1个字符中的最大值+1 思路:我们dp[n][i][j]表示长度为n 在第i位 最大值为 ...
- 2019 上海网络赛 F Rhyme scheme (字典树DP)
题目:https://nanti.jisuanke.com/t/41414 题意:求长度为n的第k个bell number , 就是第i位的选取范围在 1-(i-1)位的最大值 +1,第一位固定为 ...
- [2019上海网络赛F题]Rhyme scheme
题目链接 题意,求出合法的长度为n的字典序第k小字符串,合法的定义为除了最后一位,每一位的取值范围为'A'到'A'+pos-1,而最后一位的取值范围'A'到当前字符串最大值+1. 队友tql,Orz ...
- The Preliminary Contest for ICPC Asia Shanghai 2019
传送门 B. Light bulbs 题意: 起初\(n\)个位置状态为\(0\),\(m\)次操作,每次操作更换区间状态:\(0\)到\(1\),\(1\)到\(0\). 共有\(T,T\leq 1 ...
- POJ1671 Rhyme Schemes
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 1776 Accepted: 984 Special Judge De ...
- scheme一页纸教程
这是一个大学教授写的,非常好,原文:http://classes.soe.ucsc.edu/cmps112/Spring03/languages/scheme/SchemeTutorialA.html ...
- 算法语言Scheme修订6报告 R6RS简体中文翻译
算法语言Scheme修订6报告 R6RS简体中文翻译 来源 https://r6rs.mrliu.org/ MICHAEL SPERBERR. KENT DYBVIG, MATTHEW FLATT ...
- Oracle导出excel
oracle导出excel(非csv)的方法有两种,1.使用sqlplus spool,2.使用包体 现将网上相关代码整理后贴出以备不时之需: 使用sqlplus: 使用sqlplus需要两个文件: ...
随机推荐
- 2020/1/30 PHP代码审计之文件上传漏洞
0x00 漏洞简介 文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力.这种攻击是最为直接和有效的,"文件上传"本身是没有问题,有问题的是 ...
- .NET core ABP 获取远程IP地址
2.asp.net core 2.x上配置 第一步:在控制器中定义变量 private IHttpContextAccessor _accessor; 第二步: 控制器的构造函数进行注入 public ...
- Vue.js 之 过渡动画
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- bootstrap 基础表单
表单中常见的元素主要包括:文本输入框.下拉选择框.单选按钮.复选按钮.文本域和按钮等.其中每个控件所起的作用都各不相同,而且不同的浏览器对表单控件渲染的风格都各有不同. ☑ LESS版本:对应源文 ...
- Vue.js——3.增删改查
vue 写假后台 bootstrap 做的样式 代码 <!DOCTYPE html> <html lang="en"> <head> < ...
- js date 常用
1.怎么获取当月的最后一天 var now=new Date(); new Date(new Date(now.getFullYear(),now.getMonth()+1,1).getTime() ...
- Git&GitHub 基本使用
如果是Windows用户需要自行去Git的官网下载Git工具 相信以您的聪明才知不需要一会就可以安装好Git工具了 博主这里是MacOS系统,本省就自带Git工具就不演示安装了 在完成一个简单的Git ...
- //使用PDO连接mysql数据库
<?php //使用PDO连接mysql数据库 class pdo_con{ var $dsn = 'mysql:dbname=test; host:127.0.0.1'; va ...
- 时间复杂度T(n)
1:概念 T(n)被称为时间复杂度,一般为在某个算法中操作步骤的重复次数与问题规模n的关系,下面一一举例说明 2:具体说明 2.1:常数阶o(1) 无论代码有多少行,只要没有循环等复杂的结构,其算法时 ...
- 干货 | 京东云应用负载均衡(ALB)多功能实操
应用负载均衡(Application Load Balancer,简称ALB)是京东云自主研发的一款七层负载均衡产品,主要面向HTTP和HTTPS流量的WEB应用程序,提供灵活的功能配置.应用负载均衡 ...