题意:给出keyword,如BATBOY,A的ascii值最小,所以第二列最先输出,B有两个,左边的先输出,也就是说,接下来输出第一列和第4列,

所以每一个字母都带有一个ascii值和一个序号,用结构组合起来

#include <stdio.h>
#include <stdlib.h>
#include<string.h> struct com{
int asc;
int th;
};
int cmp(const void *a,const void *b)
{
if(((struct com *)a)->asc!=((struct com *)b)->asc)
return(((struct com *)a)->asc>((struct com *)b)->asc);
else
return(((struct com *)a)->th-((struct com *)b)->th);
}
int main()
{
int i,j;
struct com Arr[];
char temp[],cybier[];
while(scanf("%s",temp),strcmp(temp,"THEEND")){
scanf("%s",cybier);
int column=strlen(temp);
int row=strlen(cybier)/column;
for(i=;i<column;i++)
{
Arr[i].asc=temp[i]-'A';
Arr[i].th=i+;
}
qsort(Arr,column,sizeof(Arr[]),cmp);
int cur=;
char table[row][column+];
for(j=;j<column;j++)
{
for(i=;i<row;i++)
{
table[i][Arr[j].th-]=cybier[cur++];
}
}
for(i=;i<row;i++)
{
table[i][column]='\0';
}
for(i=;i<row;i++)
{
printf("%s",table[i]);
}
printf("\n");
}
return ;
}

输出出了很多次问题:实际上我如果定义个table[row][column]数组,对这个数组的值采用的是双重for循环赋值的形式,每一行可以不要'\0',用printf(table),但是在最后一行就得超出数组之外添加'\0',但是这就越界了

所以定义为table[row][column+1],在每行最后一列加'\0',最后for循环输出每一行

poj1617---columnar encryption的更多相关文章

  1. soj1036. Crypto Columns

    1036. Crypto Columns Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description The columnar en ...

  2. sicily 1036. Crypto Columns

    Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description The columnar encryption scheme scram ...

  3. Dynamics CRM 2015-Data Encryption激活报错

    在CRM的日常开发中,Data Encryption经常是不得不开启的一个功能.但是有时,我们可能遇到一种情况,Organization导入之后,查看Data Encryption是已激活的状态,但是 ...

  4. backup, file manipulation operations (such as ALTER DATABASE ADD FILE) and encryption changes on a database must be serialized.

    昨天在检查YourSQLDba备份时,发现有台数据库做备份时出现了下面错误信息,如下所示: <Exec>   <ctx>yMaint.ShrinkLog</ctx> ...

  5. SQL Server 2014 Backup Encryption

    转载自: Microsoft MVP Award Program Blog 来源:Microsoft MVP Award Program Blog 的博客:https://blogs.msdn.mic ...

  6. XShell 无法匹配的outgoing encryption算法 ,No matching outgoing encryption algorithm found

    在链接的属性(SSH -> 安全性) 的加密算法列表中选择 aes256-ctr, mac加密列表中选择hmac-sha2-256,保存即可 To enable hmac-sha2-256 an ...

  7. SQL Server安全(9/11):透明数据加密(Transparent Data Encryption)

    在保密你的服务器和数据,防备当前复杂的攻击,SQL Server有你需要的一切.但在你能有效使用这些安全功能前,你需要理解你面对的威胁和一些基本的安全概念.这篇文章提供了基础,因此你可以对SQL Se ...

  8. SQL Server安全(8/11):数据加密(Data Encryption)

    在保密你的服务器和数据,防备当前复杂的攻击,SQL Server有你需要的一切.但在你能有效使用这些安全功能前,你需要理解你面对的威胁和一些基本的安全概念.这篇文章提供了基础,因此你可以对SQL Se ...

  9. 同态加密-Homomorphic encryption

    同态加密(Homomorphic encryption)是一种加密形式,它允许人们对密文进行特定的代数运算得到仍然是加密的结果,将其解密所得到的结果与对明文进行同样的运算结果一样.换言之,这项技术令人 ...

  10. PKCS #1 RSA Encryption Version 1.5

    PKCS #1  RSA Encryption Version 1.5 在进行RSA运算时需要将源数据D转化为Encryption block(EB).其中pkcs1padding V1.5的填充模式 ...

随机推荐

  1. 用python实现文件读取和内容替换

    infile = open("D:/test.txt", "r") #打开文件 outfile = open("D:/pp2.txt", & ...

  2. 安卓linearlayout布局的一个嵌套实例

    XML代码如下 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:andr ...

  3. Qt for Android遇到的几个错误解决[Win7 + Qt5.6 +jdk 8u91]

    [1]SDK Manager无法更新Android SDK安装后需要运行SDK Manager下载安装包,默认从google网站下载,但被GWF和谐了,感谢一位网友提供的镜像站点.具体步骤是:运行SD ...

  4. docker 容器管理上

    Docker 容器管理: docker create -it centos //这样可以创建一个容器,但该容器并没有启动: docker start container_id //启动容器后,可以使用 ...

  5. JavaScript单线程

    首先浏览器的js引擎是单线程的,执行一个耗时操作必定阻碍线程后续代码的执行(比如等待网络请求的响应).一些语言采用了开一个子线程并把耗时操作放到子线程去执行的办法解决了这个问题.js引擎本身不支持多线 ...

  6. C# NameValueCollection集合 .

    案例: NameValueCollection nameValueCollection = Request.Params;//获得连接地址中的所有参数 //获取各个参数,eg:            ...

  7. Android设计中的.9.png

    在Android的设计过程中,为了适配不同的手机分辨率,图片大多需要拉伸或者压缩,这样就出现了可以任意调整大小的一种图片格式“.9.png”.这种图片是用于Android开发的一种特殊的图片格式,它的 ...

  8. html标签总结。

    接触了一段时间的html和css,发现了其中的乐趣.在写代码时一定要仔细,很有可能一个细微的错误便会导致页面的错误 总结了一下html标签. <html></html> 创建一 ...

  9. SqlServer查询数据库所有表

    //SqlServer查询数据库所有表SELECT * FROM SYSOBJECTS WHERE TYPE='U' and name like '%dict%'

  10. SQL Server执行计划那些事儿(2)——查找和扫描

    接下来的文章是记录自己曾经的盲点,同时也透漏了自己的发展历程(可能发展也算不上,只能说是瞎混).当然,一些盲点也在工作和探究过程中慢慢有些眉目,现在也愿意发扬博客园的奉献精神,拿出来和大家分享一下. ...