白睿测试 2008-11-12 07:40:00
点我顶贴
收藏
删除
貌似writeln(’1’)即获得正确答案,
找出每组正确答案中最大数即为n.
由于每一组的n不一样,
if n=某数 then write(正确答案).
其实不应给全部十组测试答案,
要不然很多题都可骗分.
#2 飞雪天涯@2008-11-12 07:40:00
9115
回复
删除
不CHEAT也容易!
#include<fstream>
#include<iostream>
#define maxn 10000
using namespace std;
#define fin cin
#define fout cout
//ifstream fin ("martian.in");
//ofstream fout ("martian.out");
int main (void)
{
int n,m,a[maxn+1];
fin>>n>>m;
for (int i=1;i<=n;i++)
fin>>a[i];
do{
int i=n-1;
while (i>0&&a[i]>a[i+1])
--i;
if (i>0){
int j=n;
while (a[j]<a[i]) --j;
int temp=a[i];
a[i]=a[j];
a[j]=temp;
int k=i+1;
int l=n;
while (k<l){
int temp=a[k];
a[k]=a[l];
a[l]=temp;
k++;
l--;
}
}
m--;
}while (m!=0);
for (int i=1;i<=n;i++){
fout<<a[i];
if (i!=n) fout<<’ ’;
}
return 0;
}