⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 encode_cpp.htm

📁 对于给定的长度不超过6 的升序字符串
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0066)http://algorithm.fzu.edu.cn/优秀作业和报告/1/S060321085/encode.cpp -->
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2900.3086" name=GENERATOR></HEAD>
<BODY><PRE>#include &lt;fstream.h&gt;
#include &lt;string.h&gt;

ifstream myinf("input.txt");
ofstream myoutf("output.txt");

long f1(int i,int k)
{
 int j;
 long sum=0;
 if(k==1) 
  return 1;
 else
 {
  for(j=i+1;j&lt;=26;j++) 
       sum=sum+f1(j,k-1);
  return sum;
 }
}

long f2(int k)
{
 int i;
 long sum=0;
 for(i=1;i&lt;=26;i++)
   sum=sum+f1(i,k);
 return sum;
}

void main()
{
 int i,j,n,k,num[7],len;
 long codenum;
 char **code;
 myinf&gt;&gt;n;
 code=new char*[n];

 for(i=0;i&lt;n;i++)
  code[i]=new char[7];
 for(i=0;i&lt;n;i++)
 {
   myinf&gt;&gt;code[i];
 }

 for(j=0;j&lt;n;j++)
 {
  codenum=1;
  len=strlen(code[j]);
  num[0]=0;
  for(i=0;i&lt;len;i++)
       num[i+1]=code[j][i]-'a'+1; 
  for(k=1;k&lt;len;k++)
         codenum=codenum+f2(k);
  for(i=1;i&lt;=len;i++)
     for(k=num[i-1]+1;k&lt;=num[i]-1;k++)
       codenum=codenum+f1(k,len-i+1);  
    
  myoutf&lt;&lt;codenum&lt;&lt;endl;
 
 }
}
</PRE></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -