POJ - 1850 Code 组合数

云安全技术——搭建VPN VPN(Virtual Private Network)是一种可以在公共网络上建立安全连接的技术。VPN是实现保密通信的基本手段,在windows系统上,可以直接进行VPN服务的搭建。1.VPN的工作原理:通过使用加密协议和认证机制,将本地计算机和远程服务器之间的通信加密和保护。2.VPN的分类:根据不同的方式和用途,VPN可以分为不同类型,例如远程访问VPN、站点到站点VPN等。3.VPN的优势:VPN可以带来许多好处,如提高数据安全性、隐藏真实IP地址、突破地理限制等。4. 阅读详情

Code
Time Limit: 1000MS Memory Limit: 30000K
Total Submissions: 9600 Accepted: 4592

Description

Transmitting and memorizing information is a task that requires different coding systems for the best use of the available space. A well known system is that one where a number is associated to a character sequence. It is considered that the words are made only of small characters of the English alphabet a,b,c, ..., z (26 characters). From all these words we consider only those whose letters are in lexigraphical order (each character is smaller than the next character). 

The coding system works like this: 
• The words are arranged in the increasing order of their length. 
• The words with the same length are arranged in lexicographical order (the order from the dictionary). 
• We codify these words by their numbering, starting with a, as follows: 
a - 1 
b - 2 
... 
z - 26 
ab - 27 
... 
az - 51 
bc - 52 
... 
vwxyz - 83681 
... 

Specify for a given word if it can be codified according to this coding system. For the affirmative case specify its code. 

Input

The only line contains a word. There are some constraints: 
• The word is maximum 10 letters length 
• The English alphabet has 26 characters. 

Output

The output will contain the code of the given word, or 0 if the word can not be codified.

Sample Input

bf

Sample Output

55

Source


也是找规律嘛

算出它之前的字符有多少个,再加上一

先把长度小于的算出来,C26,k ,k是字符串的长度

然后把每位字符类似成数位

从最高位向下找,找比这位小的字符串总数(不包括等于)

例如求ceg

先找长度为1,2的字符串个数

在从最高位第一个c字符开始,找最高位为a,b的字符个数(a:C26-(‘a'-’a‘+1) , len-i ; b : C26-(‘b'-’a‘+1),len-i ,其中i代表第几位)

第二位就找比e小的,注意 你已经找了第一位是a或b,假如第二位是a,b,c,第一位肯定是a或b,所以第二位要从d开始,依次向下类推,最后前面的字符串个数加一就是要求的编号

#include<stdio.h>
#include<string.h>
#include<math.h>
#include<string>
#include<algorithm>
#include<queue>
#include<vector>
#include<map>
#include<set>
typedef long long ll;
using namespace std;
int myc(int n,int r)
{
	int sum=1;
	for(int i=1;i<=r;i++)
	{
		sum=sum*(n+1-i)/i;
	}
	return sum;
}
int mya(int n,int r)
{
	int sum=1;
	for(int i=0;i<r;i++)
	sum=sum*(n-i);
	return sum;
}
int ans(char ch[],int len)
{
	int ans=0,i,j,t;
	for(i=1;i<len;i++)
	{
		ans+=myc(26,i);
	}//
	t=0;
//	printf("ha%d\n",ans);
	for(i=0;i<len;i++)
	{
		for(j=t;j<ch[i]-'a';j++)
		{ 
			ans+=myc(26-j-1,len-i-1);
		}
		t=ch[i]-'a'+1;
	}
	return ans;
}
int main()
{
	char ch[20],maxx;
	int len,i;
	scanf("%s",ch);
	len=strlen(ch);
	maxx=ch[0];
	for(i=1;i<len;i++)
		{
			if(ch[i]<=maxx)
			{
				printf("0\n");
				return 0;
			}
			else
			maxx=ch[i];
		}
	printf("%d\n",ans(ch,len)+1); 
	return 0;
 }


C#企业级工作流管理:从优化到重构的实战指南——代码深度解析与性能调优策略 本文通过Workflow Core与Elsa引擎实现企业审批流程优化,将处理时间从72小时缩短至2小时,效率提升200%。文章包含12个代码示例,涵盖流程梳理、引擎选型(对比Workflow Core与Elsa特性)、模块化重构(策略模式应用)及异常处理机制。关键实现包括:可视化流程建模、Serilog性能监控、Elsa集成配置、策略模式消除重复代码,以及补偿事务设计。最终方案支持高并发,通过数据库连接池优化性能,为企业级工作流系统提供完整技术方案。 阅读详情

相关推荐

Python爬虫实战:5分钟搞定东方财富网股票数据抓取(附完整代码)

本文详细介绍了如何使用Python爬虫快速抓取东方财富网的股票数据,包括环境配置、API分析、核心代码实现及优化技巧。通过简单的requests和pandas库,5分钟内即可获取高质量股票数据,适合量化交易和数据分析初学者。

weixin_29040367的博客 1183

POJ 1850Code 组合数运用

CODE 题意 给一个串让你写出对应的编码数 该串必须是 编码先按长度进行编码 对于每个串来说他们的每个字符是依次增大的(不满足此条件无法编码输出0) 思路: 1 先把 26 的组合情况打表出来 长度的编码数量 2 把比该串短的编码数求出来 3 把相同长度的但字母在其前面的编码数求出来 组合数的计算公式 C(n,m)=C(n-1,m-1)+c(n-1,m); #inc

became_a_wolf的专栏 392

从零构建物联网数据中台:MQTT协议、Node.js服务、MongoDB与InfluxDB双存储及React可视化实战

本文详细介绍了从零构建物联网数据中台的完整实战方案。通过采用MQTT协议作为设备通信标准,结合Node.js搭建高并发数据处理服务,并创新性地使用MongoDB与InfluxDB双存储架构分别管理设备元数据与海量时序数据,最后利用React构建了实时数据可视化控制台。该架构有效解决了物联网项目中数据异构、查询性能低下等核心痛点,为构建高效、可扩展的物联网平台提供了清晰路径。

weixin_28432777的博客 288

POJ1850——Code(组合数)

题目链接        这题毕竟做了一上午,所以我也不敢说这是水题,睡个午觉想通了就发现这题真的好水,而我的智商真的好感人。题目就是给你一个字符串,然后求它的编号,如果输入不合法(也就是非增序)则输出0。这道题和poj3252有类似的地方,就是求组合数,给定字符串,求出其编号,也就是看它排列的位置,首先长度比它短的肯定在前面,所以先求出长度比它短的所有序列,至于求法——大家可以想一想,这个序

Jason_crawford的博客 1022

PTGui使用教程

PTGui使用教程为啥使用ptgui开始使用ptgui 为啥使用ptgui ptgui是一个全景拼接软件,在海思hi3559上做视频拼接的时候,需要拼接参数,这是就需要使用到ptgui,这里可以在该网站下下载ptgui:下载地址 开始使用ptgui 第一步,加载图片,我这里添加了三幅图 然后添加控制点(可以先多对准几次图像,这样会自动生成一些控制点,但是不保证准确),建议控制点不要太密集 点开镜头设置,勾选以下几个选项以及配置好镜头类型,如下图 点开优化器,在高级界面中配置如下参数,最后点

what_wrong的博客 1万+

部署与可视化系统:零基础到精通:LabVIEW 调用 YOLO 动态链接库(DLL)的保姆级视觉检测系统融合实战

LabVIEW与YOLO26深度集成:工业视觉检测新范式 本文揭示了LabVIEW与最新YOLO26模型深度集成的创新方案,通过C++封装ONNX Runtime为DLL,在LabVIEW中实现端到端视觉检测。核心突破点包括: 技术选型:对比YOLOv5/YOLOv8/YOLO26性能,YOLO26在CPU推理速度提升43%,支持NMS-Free端到端推理 部署架构:提供ONNX Runtime C++ API和TensorRT两种DLL封装路径,适配不同硬件环境 工程实现:详细展示从PyTorch模型导出

ZXSXJ的博客 282

POJ - 1850 Code——组合数

题意: 定义s为只由26个小写英文字母组成的长度任意的串,且串中的字母严格升序。 定义集合S为长度10以下的s的集合,S中的元素优先按照串的长度排序,长度相同按照字典序排序。 输入一个串str,若str在S中则输出str是S的第几小,若str不在S中输出0 思路: 组合数 #include &lt;cstdio&gt; #include &lt;cstring&gt; #includ...

hao_zong_yin的博客 425

10.28华为OD机试真题 新系统 - 社交网络消息转发 (Java/Py/C/C++/Js/Go)

10.28华为OD机试真题 新系统 - 社交网络消息转发 (Java/Py/C/C++/Js/Go)

算法大师! 415

poj 1850 code(杨辉三角+组合数)

以下分析转自  http://blog.youkuaiyun.com/lyy289065406/article/details/6648492 输出某个str字符串在字典中的位置,由于字典是从a=1开始的,因此str的位置值就是 在str前面所有字符串的个数 +1 规定输入的字符串必须是升序排列。不降序列是非法字符串 不要求用循环输入去输入若干组字符串,但若输入非法字符串则输出0,且结束程序,这是和PO

1817

YOLOv8 交通违规检测各个场景的实际应用

本文介绍了基于YOLOv8的交通违规检测系统在不同场景下的应用实现。系统可检测闯红灯、超速、违停和不系安全带等多种违规行为,针对每种场景提供了具体的技术方案和Python实现代码。其中闯红灯检测结合信号灯状态分析,超速检测通过距离时间计算速度,违停检测采用长时间跟踪策略,安全带检测则需更高精度识别。文章还展示了如何整合各功能构建综合交通监管系统,并总结了不同应用场景的技术要点和优化方向,为智能交通管理提供了实用解决方案。

u010117029的博客 299

三种方法教你下载大模型到本地,总有一种适合你

本文主要介绍了下载大模型到本地的三种解决方案,希望能对同学们有所帮助。 文章目录 1. 场景/问题描述 2. 方案一:使用git 3. 方案二:镜像站 4. 方案三:高速下载工具(变体及自定义代码) 4.1 aria2 4.2 自定义代码

weixin_43178406的博客 17万+

POJ 1850 Code 组合数 编码

题意: 输出某个str字符串在字典中的位置。 规定长度小的字符串排在长度大的字符串前面,并且输入的字符串的字符必须是升序排列。不降序列是非法字符串。 由于字典是从a=1开始的,因此str的位置值就是 在str前面所有字符串的个数 +1 对于输入的英文字符串: 1.先判断是否合法,即是否能进行code 2.然后就是要求  编码小于它的个数+1

便纵有千种风情 515

39-高级优化技术:指令调度与乱序执行 - 手把手教你手写CPU

本文介绍了现代处理器设计中提高指令级并行性(ILP)的两种关键技术:指令调度和乱序执行。指令调度分为静态调度(由编译器完成)和动态调度(由硬件完成),后者能更好适应运行时情况但复杂度更高。乱序执行通过动态重排指令顺序提高硬件利用率,其核心组件包括重排序缓冲区、保留站和寄存器重命名。文章提供了保留站的Verilog实现示例,并分析了不同优化技术在性能、硬件开销和功耗方面的权衡。最终指出,CPU设计需根据性能、功耗等需求选择合适的优化技术。

2301_79143213的博客 85

POJ 1850 Code (组合数)

参考博客 上边这篇博客写的很清楚,也讲的非常好。 对这种题突然有了一点感悟了。 #include&lt;cstdio&gt; #include&lt;cstring&gt; int c[27][27]; void init(){ c[0][0]=1; c[1][0]=1; c[1][1]=1; for(int i=2;i&lt;27;i++){ ...

兜率工的博客 179

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

POJ 1850 Code(组合数)

http://poj.org/problem?id=1850 题意 :给定字符串,系统是用字符串组成的,字符串是按字典序排的。编码系统有三条规则,1这些的单词的长度是由小到大的,2相同长度的按字母在字典序的顺序排的,3 a-1,b-2,.....z-26,ab-27,..........,az-51,bc-52,............,vwxyz - 83681,..................

weixin_30446613的博客 78

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Poj 1496 Word Index & Poj 1850 Code (计数 组合数)

两题除了字符串长度不同之外没有区别。 题意:字符串的合法排序规则为:长度小的靠前,同长度则按字典序,每个字符串内部字母都是升序的。 思路:因为满足字符串内部也都是升序的,所以对于长度为L的字符串,满足条件的个数便是从26个字母中选出L个,即C[26][L]。借此统计比它短的部分,等长度的串枚举解决。 本题方法很多,可以动态规划:http://blog.sina.com.cn/s/blog_6

whyorwhnt的专栏 1153

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

POJ 1850 Code G++ 杨辉三角 组合数 背

编码方式如表所示,序列中的字母小于序列中其后的字母。给出字母序列求编码。

woniupengpeng的专栏 193

POJ - 1850 Code 组合数+模拟

Transmitting and memorizing information is a task that requires different coding systems for the best use of the available space. A well known system is that one where a number is associated to a char...

还我笑颜 188

(POJ1850)Code <组合数学,杨辉三角计算每一个组合数nCm>

Code DescriptionTransmitting and memorizing information is a task that requires different coding systems for the best use of the available space. A well known system is that one where a number is asso

STILLxjy 1344

POJ 1850 &&POJ 1496 Code 杨辉三角+组合数

点击打开链接 Code Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 7475   Accepted: 3495 Description Transmitting and memorizing information is a task that

代码改变世界,keep coding。 1229

poj 1850 Code

poj 1850 Code Code Time Limit: 1000MS   Memory Limit: 30000KB   64bit IO Format: %I64d & %I64u [Submi

codeStone 2818

POJ 1850 Code 【组合数学】

传送门:POJ 1850 Code Time Limit: 1000MS Memory Limit: 30000K Problem Description Transmitting and memorizing information is a task that requires different coding systems for the best use of the avail...

Waiting For You 192

POJ 1850 Code

POJ 1850 Code题意 给你一个序列,如果不是严格升序的序列就输出0,否则判断这个序列是第几位。 思路 分成两部分: 第一部分:先算长度小于次串的所有序列有多少个。其实就是一个排列组合,也就是C(26,n),n是串的长度。就是从26个字母里面选n个字母的组合。 第二部分: c[0], c[1], c[2],…,c[n]; 我们发现如果c[0]是a的话,那么后面就剩下25种选择的

wwx0848的专栏 363

POJ1850-Code

全解题报告索引目录 -> 【北大ACM – POJ试题分类】 转载请注明出处:http://exp-blog.com ------------------------------------------------------------------------- 大致题意:(与POJ1496基本一致) 输出某个str字符串在字典中的位置,由于字典是从a=1开始的,因此s...

ζёСяêτ - 小優YoU 5155

POJ 1850/ 1496 组合数学

POJ 1850/ 1496 组合数学

水果君の日常 1521

poj 1850 code

http://poj.org/problem?id=1850首先应该判断一下给出的字符串是否为升序,否则答案为0. 对于长度为L的一串,我们首先应该加上比它短的串的个数,然后再算它是长度为L的里面的第几个。 在算长度为len的串的个数的时候,因为都是升序的,特定的几个字符组成的串没有重复,所以我们可以 用组合数来算,个数为C(26,len)。 然后再算它是长度为L的串的第几个时,一位一位地算

hjx 242
上一篇: POJ - 1159 Palindrome 最长公共子序列
下一篇: POJ - 1942 D - Paths on a Grid 组合数
jerans
博客等级 码龄10年 54粉丝 255原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值