习题6-2 S-Trees UVA
来源:互联网 发布:2017fc2破解版域名设置 编辑:程序博客网 时间:2024/05/22 06:43
题目链接:https://vjudge.net/problem/UVA-712
题意:根据输入的01序列判断最终会走到哪一片叶子(0左1右)(x1 x2 这些输入没用上)
思路:a数组存储叶子值,mov是最初的起点1,根据输入的路径走(0就是2*mov,1就是2*mov+1,因为一个节点k的左右儿子节点分别是2*k,2*k+1),最后算出的叶子的对应值,减去上边的2的n次方个节点,就是对应的以1开始的a数组存储的叶子节点的值。
Code:
#include <bits/stdc++.h>using namespace std;const int maxn = 256+6;int a[maxn];int res[20000];int main(){int n;int CASE = 1;while( scanf("%d",&n) && n ){printf("S-Tree #%d:\n",CASE++);int cnt = 1;for( int i = 0 ; i < n ; i++ ){char op[5];cin >> op;}for( int i = 1 ; i <= pow(2,n) ; i++ ){scanf("%1d",&a[i]);}int m ;cin >> m;for( int i = 0 ; i < m ; i++ ){int mov = 1;int x;for( int j = 1 ; j <= n ; j++ ){scanf("%1d",&x);mov = 2 * mov + x;} int tmp ;tmp = mov - pow(2,n) + 1;res[cnt++] = a[tmp];}for(int i = 1;i <= m; i++ )printf("%d",res[i]);printf("\n\n");}return 0;}
阅读全文
0 0
- 习题6-2 S-Trees UVA
- 习题6-2 UVA 712 S-Trees S树
- 习题6-2 S树(S-Trees, UVa 712)
- 习题6-2 S-Trees(树)
- UVa712 习题6-2 S树(S-Trees)
- 算法入门经典习题6-2,uva712,S-Trees
- Uva712 S-Trees 【二分思想】【习题6-2】
- 习题6-2 S树 UVa 712
- 算法竞赛入门经典 第二版 习题6-2 S树 S-Trees uva712
- UVa 712 S-Trees
- UVa 712 - S-Trees
- Uva 712 S-Trees
- uva 712 - S-Trees
- uva 712 - S-Trees
- UVa 712 - S-Trees
- UVA 712 S-Trees
- uva-712 S-Trees
- uva 712-S-Trees
- Java I/O系统之OutputStream
- 遍历c:\windows
- centos7 添加用户并授权root权限
- 20171109
- 人工智能大数据,公开的海量数据集下载,ImageNet数据集下载,数据挖掘机器学习数据集下载
- 习题6-2 S-Trees UVA
- Pojo和JavaBean的区别
- sdk开发中如何去捕获系统的didReceiveLocalNotification以及didReceiveRemoteNotification通知
- 听说有些老铁,要感谢下大师兄?扫一扫,领红包啦。顺便打赏我个0.01¥怎么样?
- Android学习之ListView
- 【NOIP2017模拟赛】二分图+状态压缩DP Graph(好题)
- 为什么这题交上去显示wrong answer?
- 伪随机数rand()与srand()学习心得
- MySQL练习时所遇问题