九度1004---迄今为止唯一AC掉的一个题

-----在九度上面 #include<iostream> #include<stdlib.h> using namespace std; 的组合会出错,但在dev c++上是可以编译通过的。这说明在线oj的死板,或许也说明了我编程的不严谨,以后需要注意这一点。

九度1004 用了vector,代码如下:

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;

int main()
{
vector<int> s;
int n1,n2,i,a;
while(cin>>n1) //因为不止一个测试用例,题目要求
{

for (i=0;i<n1;i++)
{
cin>>a;
s.push_back(a);
}
cin>>n2;
for (i=0;i<n2;i++)
{
cin>>a;
s.push_back(a);
}
sort(s.begin(),s.end());
cout<<s[(n1+n2)/2]<<endl;

s.clear();//***************这一句很重要,也是我wa多次的原因

cin.clear();
cin.ignore();

}

return 0;

}

还有我比较钦佩的一个代码,这是我从别处带来的,只供借鉴,网上多个样本不知出处;

#include<stdio.h>
#include <stdlib.h>
using namespace std;
int a[1000005];
int cmp (void const *a,void const *b)
{
return *(int*)a-*(int*)b;
}
int main()
{
int m,n,i;
while(scanf("%d",&n)!=EOF)
{
for (i=0;i<n;i++)
scanf("%d",&a[i]);
scanf("%d",&m);
for(i=n;i<n+m;i++)
scanf("%d",&a[i]);
qsort(a,n+m,sizeof(a[0]),cmp);
printf("%d\n",a[(n+m-1)/2]);
}
return 0;

}

 

 

九度的题目:题目1006:ZOJ问题的解法,原来是找规律,真让人无语: 

posted @ 2017-02-22 10:09  贱人郭  阅读(126)  评论(0编辑  收藏  举报