浙大ACM 1006 WA 求助

月光下的酒 2013-11-15 06:19:15
#include<stdio.h>
#include<string.h>
#define MAX 70
int main(void){
int k;
char ciphertext[MAX];
while(scanf("%d",&k)&&k!=0){
//输入
getchar();
gets(ciphertext);
int n=strlen(ciphertext);
int ciphercode[n];

int plaincode[n];
//得到密文数组
for(int i=0;i<n;i++){
if(ciphertext[i]=='_')
ciphercode[i]=0;
else if(ciphertext[i]=='.')
ciphercode[i]=27;
else ciphercode[i]=ciphertext[i]-96;
}

//得到原文代码数组
for(int i=0;i<n;i++){
int a=0;
while(a<=27){
if(ciphercode[i]==(a-i)%28||ciphercode[i]==(a-i+28)%28)
{
int x=k*i;
x=x%n;
plaincode[x]=a;
break;

}
a++;
}

}
//test
// for(int i=0;i<n;i++)
// printf("%d\n",plaincode[i]);
//test
for(int i=0;i<n;i++){
char c;
if(plaincode[i]==0)
c='_';
else if(plaincode[i]==27)
c='.';
else c=plaincode[i]+96;
putchar(c);

}
putchar('\n');


}
}
...全文
120 3 打赏 收藏 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
月光下的酒 2013-11-16
  • 打赏
  • 举报
回复
谢谢二楼!过了!
logiciel 2013-11-16
  • 打赏
  • 举报
回复
#include<stdio.h>
#include<string.h> 
//改 #define MAX 70
#define MAX 71
int main(void){
  int k;
  char ciphertext[MAX];
  while(scanf("%d",&k)&&k!=0){
    //输入 
    getchar();
    gets(ciphertext);
    int n=strlen(ciphertext);
    int ciphercode[MAX];//改 int ciphercode[n];

    int plaincode[MAX];//改 int plaincode[n];
    //得到密文数组 
    for(int i=0;i<n;i++){
      if(ciphertext[i]=='_')
        ciphercode[i]=0;
      else if(ciphertext[i]=='.')
        ciphercode[i]=27;
      else ciphercode[i]=ciphertext[i]-96;
    }

    //得到原文代码数组
    for(int i=0;i<n;i++){
      /*改 
      int a=0;
      while(a<=27){
        if(ciphercode[i]==(a-i)%28||ciphercode[i]==(a-i+28)%28)
        {
          int x=k*i;
          x=x%n;
          plaincode[x]=a;
          break;

        }
        a++;
      }*/
      plaincode[k*i%n] = (ciphercode[i]+i)%28;
    } 
    //test
    //	for(int i=0;i<n;i++)
    //		printf("%d\n",plaincode[i]);
    //test
    for(int i=0;i<n;i++){
      char c;
      if(plaincode[i]==0)
        c='_';
      else if(plaincode[i]==27)
        c='.';
      else c=plaincode[i]+96;
      putchar(c);

    }
    putchar('\n');


  }
}
月光下的酒 2013-11-15
  • 打赏
  • 举报
回复
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1006
下载代码方式:https://pan.quark.cn/s/054d920fa1d1 《学生博客信息管理系统详解》 学生博客信息管理系统是一款针对教育环境而设计的简化博客平台,其主要目的在于协助教师进行学生博客信息的监控与管理,并对学生的作业得分进行记录。该系统具备方便的查询和访问特性,能够显著提升教学活动中的信息传递效率,并且为学生构建了一个展示个人能力、交流知识的平台。 1. **系统架构** 学生博客信息管理系统大概采用了常规的三层架构,涵盖了表现层(用户交互界面)、业务逻辑层(负责业务规则的执行)以及数据访问层(负责与数据库进行数据交换)。此类架构有利于代码的规范化管理与维护,有助于提升系统的可扩展性与代码复用率。 2. **功能模块** - **用户管理**:包含注册、登录、个人资料维护等功能,旨在保障用户能够安全地使用系统。 - **博客发布**:学生能够建立、修改和移除自己的博客文章,内容形式支持文本、图片、链接等多样化展示。 - **博客查询**:用户可根据关键词、作者等条件进行检索,以快速定位所需的博客内容。 - **作业评分**:教师可以检视学生的作业,实施评分与评语,系统将自动计算每次作业的平均分数与总得分。 - **统计分析**:系统提供数据统计功能,例如学生作业成绩的分布情况、活跃度最高的博主排行等,为教学决策提供数据依据。 3. **技术选型** 从提供的文件"博客管理.jar"可以推断,该系统可能基于Java语言开发,因为.jar是Java程序的可执行文件格式。同时,"博客管理_lib"可能包含了系统运行所需的第三方库资源,这些库资源或许包含了Spring框架、Hibernate用于数据持久化处理,或MyBatis用于数据库交互,...

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧