您的位置:首页 > 其它

n支队伍比赛,分别编号为0,1,2。。。。n-1,已知它们之间的实力对比关系和出场顺序,求最终排名

2013-04-17 12:22 246 查看
#include <iostream>
using namespace std;
int w[4][4] = {
0,1,2,3,
1,1,2,3,
2,2,2,3,
3,3,3,3
};
void getResult(int* order,int len,int* result){
int rLen = len;
if(len == 1) {
result[--rLen] = order[len - 1];
return;
}
int* newOrder = new int[len/2];
for(int i = 0 ; i < len;i+=2) {
if(w[order[i]][order[i+1]] == order[i]) {
newOrder[i/2] = order[i];
result[--rLen] = order[i + 1];
cout<<"win:"<<order[i]<<endl;
} else {
newOrder[i/2] = order[i+1];
result[--rLen] = order[i];
cout<<"win:"<<order[i+1]<<endl;
}
}
getResult(newOrder,len/2,result);
delete[] newOrder;
}
int main()
{
int order[4] = {0,2,3,1};
int result[4];
getResult(order,4,result);
cout<<"Order:";
for(int i = 0 ; i < 4 ; i ++ ) {
cout<<result[i]<<" ";
}
cout<<endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  n支队伍比赛
相关文章推荐