0
这是我第一次使用在线评判,我尝试了一个简单的程序来熟悉环境。通过uva的中位数程序
这里是question。
我解决了它,但得到了一个错误的答案!
#include<stdio.h>
#include<math.h>
#include<iostream>
int main()
{
int t;
int n;
int num[10];
int i,j,temp;
int s;
int fmid;
std::cin >>t;
int iter=0;
while (iter<t)
{
std::cin>>n;
if (n!=-1){
for(i=0;i<n;i++)
std::cin>>num[i];
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(num[i]>num[j])
{temp=num[i];
num[i]=num[j];
num[j]=temp;
}
s=0;
if (n%2 ==0)
{
int mid=n/2-1;
int midd=mid+1;
s=(num[mid]+num[midd])/2;
fmid=s;
}
else
{s=ceil(n/2);
fmid=num[s];}
std::cout<<fmid;
}
iter++;
}
return 0;
}
任何建议,非常感谢。
感谢
谢谢史蒂芬!一个整洁的解决方案。虽然这个问题并不难,但我无法得到正确的答案:(..!。你有什么意见可以提高我在网上裁判的表现吗?..my-no:616507 –
我建议你以保持练习中的问题 系统地从简介和标准数据结构和库,图表等方面尝试“竞争性编程3书籍”的每个章节,您是否使用uhunt?它有很大的帮助 'http:// uhunt .felix-halim.net /' – yulonglong
你的意思是你的号码是616507?当你提交你的代码时,我指的是页面上的问题号码? – yulonglong