poj_1105 S-trees
2014-07-24 10:39
155 查看
用数组装就好,不要用树。
#include<stdio.h>
#include<string.h>
#include <iostream>
#include <stdlib.h>
#include <fstream>
using namespace std;
int fuck(int di,int ci){
int ans=1;
for(int i=1;i<=ci;i++)ans*=di;
return ans;
}
int main(){
//ifstream cin("ha.txt");
char stu[20],s;
int n,total,odered[10],luan[10],x_rank[10],t,ans,loop,real_ans[1024],cnt,times=1;
while(cin>>n&&n){
total=fuck(2,n);
int tree[1024],comm[10];
for(int i=0;i<n;i++){cin>>s>>x_rank[i];}
cin.get();
for(int i=0;i<total;i++){s=cin.get();tree[i]=s-'0';}
cin>>t;
cnt=0;
while(t--){
cin.get();
for(int i=0;i<n;i++){s=cin.get();comm[i]=s-'0';}
for(int i=0;i<n;i++){odered[i]=comm[x_rank[i]-1];}
ans=0;
for(int i=0;i<n;i++){
ans+=odered[i]*fuck(2,n-1-i);
}
//cout<<ans<<" ";
real_ans[cnt++]=tree[ans];
}
cout<<"S-Tree #"<<times++<<":"<<endl;
for(int i=0;i<cnt;i++){cout<<real_ans[i];}
cout<<endl<<endl;
}
}
#include<stdio.h>
#include<string.h>
#include <iostream>
#include <stdlib.h>
#include <fstream>
using namespace std;
int fuck(int di,int ci){
int ans=1;
for(int i=1;i<=ci;i++)ans*=di;
return ans;
}
int main(){
//ifstream cin("ha.txt");
char stu[20],s;
int n,total,odered[10],luan[10],x_rank[10],t,ans,loop,real_ans[1024],cnt,times=1;
while(cin>>n&&n){
total=fuck(2,n);
int tree[1024],comm[10];
for(int i=0;i<n;i++){cin>>s>>x_rank[i];}
cin.get();
for(int i=0;i<total;i++){s=cin.get();tree[i]=s-'0';}
cin>>t;
cnt=0;
while(t--){
cin.get();
for(int i=0;i<n;i++){s=cin.get();comm[i]=s-'0';}
for(int i=0;i<n;i++){odered[i]=comm[x_rank[i]-1];}
ans=0;
for(int i=0;i<n;i++){
ans+=odered[i]*fuck(2,n-1-i);
}
//cout<<ans<<" ";
real_ans[cnt++]=tree[ans];
}
cout<<"S-Tree #"<<times++<<":"<<endl;
for(int i=0;i<cnt;i++){cout<<real_ans[i];}
cout<<endl<<endl;
}
}
相关文章推荐
- POJ1105 S-Trees
- POJ 1105 S-Trees (模拟)
- poj 1105 S-Trees 数组模拟建树
- UVa 712/POJ 1105/ZOJ 1150 S-Trees(用数组模拟二叉树)
- POJ 题目1105 S-Trees(二叉树模拟)
- 【POJ 1105 S-Trees】
- poj 1095 Trees Made to Order 卡特兰数
- POj 1105解题报告
- POJ 1095 Trees Made to Order(卡特兰数列)
- poj 2665 Trees
- poj-2029 Get Many Persimmon Trees
- (POJ 2029)Get Many Persimmon Trees <二维树状数组>
- POJ2665 Trees
- POJ 2029 Get Many Persimmon Trees
- zoj 1716 || poj 2029 Get Many Persimmon Trees
- POj 1105解题报告
- poj 2029 Get Many Persimmon Trees 二维树状数组
- poj-1095-Trees Made to Order
- POJ 2029 Get Many Persimmon Trees
- POJ_2029_GetManyPersimmonTrees