Code (组合数)
| Time Limit: 1000MS | Memory Limit: 30000K | |
| Total Submissions: 7184 | Accepted: 3353 | 
Description
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 word is maximum 10 letters length
• The English alphabet has 26 characters.
Output
Sample Input
bf
Sample Output
55 忽略了输出0的情况,wa了若干次。。。
#include<stdio.h>
#include<string.h>
int c[][]; void init()
{
memset(c,,sizeof(c));
for(int i = ; i <= ; i++)
{
c[i][] = ;
c[i][i] = ;
} for(int i = ; i <= ; i++)
{
for(int j = ; j < i; j++)
{
c[i][j] = c[i-][j-] + c[i-][j];
}
}
} int main()
{
init();
int i,j,sum;
char s[];
scanf("%s",s);
int len = strlen(s); int flag = ;
for(i = ; i < len; i++)
{
for(j = i+; j < len; j++)
{
if(s[i] >= s[j])
{
flag = ;
break;
}
}
if(flag == )
break;
}
if(flag == )
printf("0\n");
else
{
sum = ;
for(i = ; i <= len-; i++)
sum += c[][i]; for(j = ; j <= s[]-'a'-; j++)
sum += c[-j][len-]; for(i = ; i < len; i++)
{
for(j = s[i-]-'a'+; j <= s[i]-'a'-; j++)
{
sum += c[-j][len--i];
}
} printf("%d\n",sum+);
} return ;
}
Code (组合数)的更多相关文章
- poj Code(组合数)
		Code Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 9918 Accepted: 4749 Description ... 
- Solution -「Code+#4」「洛谷 P4370」组合数问题 2
		\(\mathcal{Description}\) Link. 给定 \(n,k\),求 \(0\le b\le a\le n\) 的 \(\binom{a}{b}\) 的前 \(k\) 大. ... 
- P4370 [Code+#4]组合数问题2
		题目要求当\(0\leq a\leq b\leq n\)时,\(k\)个\(\tbinom{b}{a}\)的和的最大值 观察杨辉三角形,可以发现,最大的\(\tbinom{b}{a}\),为\(\tb ... 
- POJ 1850 Code(组合数)
		http://poj.org/problem?id=1850 题意 :给定字符串,系统是用字符串组成的,字符串是按字典序排的.编码系统有三条规则,1这些的单词的长度是由小到大的,2相同长度的按字母在字 ... 
- POJ 3904 JZYZOJ 1202 Sky Code 莫比乌斯反演 组合数
		http://poj.org/problem?id=3904 题意:给一些数,求在这些数中找出四个数互质的方案数. 莫比乌斯反演的式子有两种形式http://blog.csdn.net/out ... 
- LCM性质 + 组合数 - HDU 5407 CRB and Candies
		CRB and Candies Problem's Link Mean: 给定一个数n,求LCM(C(n,0),C(n,1),C(n,2)...C(n,n))的值,(n<=1e6). analy ... 
- C++单元测试 之 gtest -- 组合数计算.
		本文将介绍如何使用gtest进行单元测试. gtest是google单元测试框架.使用非常方便. 首先,下载gtest (有些google项目包含gtest,如 protobuf),复制目录即可使用. ... 
- 【BZOJ-4591】超能粒子炮·改      数论 + 组合数 + Lucas定理
		4591: [Shoi2015]超能粒子炮·改 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 95 Solved: 33[Submit][Statu ... 
- POJ 3904 Sky Code (容斥原理)
		B - Sky Code Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u Submit ... 
随机推荐
- IOS 播放动态Gif图片
			图片分为静态和动态两种,图片的格式有很多种,在开发中比较常见的是.png和.jpg的静态图片,但有的时候在App中需要播放动态图片,比如.gif格式的小表情头像,在IOS中并没有提供直接显示动态图片的 ... 
- Java基础知识强化04:判断101~200之间有多少素数
			1. 判断101~200之间有多少素数? package himi.hebao; /** * (1).编写函数isPrime()用来判断输入数据是否为素数 (2).遍历判断101~200之间的数据是否 ... 
- media  query
			accepted Another useful media feature is device-aspect-ratio. Note that the iPhone 5 does not have a ... 
- 运行yum报错:Error: Cannot retrieve metalink for repository: epel. Please verify its path
			Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again 当我们安装第三方扩 ... 
- Python建立socket并获取信息
			import socket, sys port = 80 host = "www.baidu.com" print "Creating socket..." s ... 
- HTTPS是如何保证连接安全:每位Web开发者都应知道的
			“HTTPS协议的工作原理是什么?”这是我在数天前工作项目中需要解决的问题. 作为一名Web开发者,我当然知道 HTTPS 协议是保障用户敏感数据的好办法,但并不知道这种协议的内在工作机制. 它怎么保 ... 
- 第三篇:python高级之生成器&迭代器
			python高级之生成器&迭代器 python高级之生成器&迭代器 本机内容 概念梳理 容器 可迭代对象 迭代器 for循环内部实现 生成器 1.概念梳理 容器(container ... 
- .NET中TextBox控件设置ReadOnly=true后台取不到值三种解决方法
			当TextBox设置了ReadOnly=true后要是在前台为控件添加了值,后台是取不到的,值为空,多么郁闷的一个问题经过尝试,发现可以通过如下的方式解决这个问题.感兴趣的朋友可以了解下 当TextB ... 
- web前端:js
			内嵌样式<script></script> alert(“123”)弹出对话框 document.write(“test”) 引入方式 <title></ti ... 
- 委托、 Lambda表达式和事件——委托
			简单示例 /* * 由SharpDevelop创建. * 用户: David Huang * 日期: 2015/7/27 * 时间: 10:22 */ using System; namespace ... 
