道路重建
2010-12-04 11:17
141 查看
#include <queue>
#include <set>
#include <vector>
#include <iostream>
#include <cmath>
using namespace std;
int max=0;
int point[6];
priority_queue<int> dist2;
multiset<int> dist;
bool f(int n){
int tempDist;
if(n==6){ //彻底比较是否存在
multiset<int> tempSet=dist;
for( int i=0 ; i<6 ; i++ ){
for( int j=0 ; j<6 ; j++ ){
if(i!=j){
tempDist=abs(point[i]-point[j]);
if( tempSet.find( tempDist )!=tempSet.end() ){
// cout<<tempDist<<" ";
tempSet.erase(tempSet.find(tempDist));
}else{
//cout<<"aaaa"<<endl;
return 0; //不符合
}
}
}
}
cout<<endl;
for( i=0 ; i<6 ; i++ ){ //查找成功,打印结果
cout<<point[i]<<' ';
}
cout<<"bbbbbbb"<<endl;
return 1;
}
int temp;
temp=point
=dist2.top();
dist2.pop();
if(f(n+1)){
return 1;
}else{
point
=max-temp;
return f(n+1);
}
}
int main(){
int input;
for(int i=0;i<15;i++){
cin>>input;
dist.insert(input);
dist2.push(input);
}
point[0]=0;
max=point[1]=dist2.top();
dist2.pop();
point[2]=dist2.top();
dist2.pop();
// cout<<point[1]<<endl;
// cout<<point[2]<<endl;
f(3);
return 0;
}
#include <set>
#include <vector>
#include <iostream>
#include <cmath>
using namespace std;
int max=0;
int point[6];
priority_queue<int> dist2;
multiset<int> dist;
bool f(int n){
int tempDist;
if(n==6){ //彻底比较是否存在
multiset<int> tempSet=dist;
for( int i=0 ; i<6 ; i++ ){
for( int j=0 ; j<6 ; j++ ){
if(i!=j){
tempDist=abs(point[i]-point[j]);
if( tempSet.find( tempDist )!=tempSet.end() ){
// cout<<tempDist<<" ";
tempSet.erase(tempSet.find(tempDist));
}else{
//cout<<"aaaa"<<endl;
return 0; //不符合
}
}
}
}
cout<<endl;
for( i=0 ; i<6 ; i++ ){ //查找成功,打印结果
cout<<point[i]<<' ';
}
cout<<"bbbbbbb"<<endl;
return 1;
}
int temp;
temp=point
=dist2.top();
dist2.pop();
if(f(n+1)){
return 1;
}else{
point
=max-temp;
return f(n+1);
}
}
int main(){
int input;
for(int i=0;i<15;i++){
cin>>input;
dist.insert(input);
dist2.push(input);
}
point[0]=0;
max=point[1]=dist2.top();
dist2.pop();
point[2]=dist2.top();
dist2.pop();
// cout<<point[1]<<endl;
// cout<<point[2]<<endl;
f(3);
return 0;
}
相关文章推荐
- JZOJ5465. 【NOIP2017提高A组冲刺11.9】道路重建
- 中石油 5797 道路重建
- 洛谷 P1272 重建道路
- 道路重建(记忆化搜索+贪心)
- 洛谷 P1272 重建道路
- P1272 重建道路(树形dp)
- 【图论】[luoguP3905]道路重建
- 1089: 道路重建(dij 最短路径)
- 1686: 道路重建
- 洛谷 p1272 重建道路 树形dp
- 2018年ACM俱乐部个人训练赛第十六场 问题C.道路重建
- 树状动规 USACO Feb 2002 Rebuilding Roads 重建道路
- Luogu P3905 道路重建
- BSOJ: 1625 【USACO 2002 February Green】重建道路
- P1272 重建道路
- 树形DP 洛谷P1272 道路重建
- [luogu1272]重建道路(树形dp)
- [2017纪中11-9]道路重建 点双连通分量+树的直径
- 2018山东冬令营 中石油 道路重建
- 一、树形dp(3)重建道路