李文区 2016-03-20 02:28 采纳率: 0%
浏览 1597

求大家帮我看看poj的1723,提交后告诉我答案错误,为什么?我一直没搞懂poj的编译器的规则

#include
#include
using namespace std;

int round(double sum, int num) {
if(sum>0)
return (int)(sum/num + 0.5);
else if(sum == 0) return 0;
else return (int)(sum/num - 0.5);
}

bool isexit(int* x, int y, int num) {
for(int i=0; i<num; i++) {
if(x[i] == y)
return true;
}
return false;
}

int main() {
int num, i=0, var;
int *x;
int *y;
double sum = 0;
cin>>num;
x = (int *) malloc(num * sizeof(int));
y = (int *) malloc(num * sizeof(int));
while(i cin>>x[i]>>y[i];
sum += y[i++];
}

var = round(sum, num);
sum = 0;
for(i=0; i<num; i++) {
    sum += abs(y[i] - var); 
}
int xmove, ymove;
for(i=0; i<num; i++) {
        for(int j=0; j<num&&j!=i ;j++)
            if(x[j]==x[i]) {
                xmove = x[j]-1;
                while(isexit(x, xmove, num)) {
                    --xmove;
                }
                ymove = x[j]+1;
                while(isexit(x, ymove, num)) {
                    ++ymove;
                }
                if(x[j] - xmove > ymove - x[j]) {
                    sum += abs(ymove - x[j]);
                    x[j] = ymove;                       
                }
                else {
                    sum += abs(x[j] - xmove);
                    x[j] = xmove;
                }
            }
    }
cout<<sum<<endl;
free(x);
free(y);
return 0;

}

  • 写回答

1条回答

  • huatian5 2016-03-20 03:28
    关注

    编译规则?不懂你在说什么,是编译环境吗》?

    评论

报告相同问题?

悬赏问题

  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用