泛型编程(字符矩阵排序)
Time Limit(Common/Java):1000MS/3000MS Memory Limit:65536KByte
Total Submit:24 Accepted:12
Description
现给出一个N*N(长和宽都为N)全由小写英文字母组成的方阵,要求将每一行都按照字母表顺序从小到大排序后上下颠倒之后输出。
Input
输入包括N+1行,第一行为一个整数N,接下来为N行长度为N的字符串。其中0< N<=100,所有字母均为小写字母。
Output
每一行排序后,并且上下颠倒后的方阵。
Sample Input
3
abc
edf
igh
Sample Output
ghi
def
abc
代码块:
#include <iostream>
#include<stack>
using namespace std;
int main()
{
char a[100];int n,i,j,k=0,t;
stack <char> s;
cin>>n;t=n;
while(n--)
{
cin>>a;
for(i=0;i<strlen(a)-1;i++)
for(j=i+1;j<strlen(a);j++)
{
char t;
if(a[i]<a[j]){t=a[j];a[j]=a[i];a[i]=t;}
}
for(i=0;i<strlen(a);i++)
s.push(a[i]);
}
while(!s.empty())
{
cout<<s.top();k++;
if(k%t==0)cout<<endl;
s.pop();
}
return 0;
}