当前位置: 首页 > news >正文

韩国优秀网站设计文昌品牌网站建设费用

韩国优秀网站设计,文昌品牌网站建设费用,博星卓越 网站开发方案,博客网站开发视频L1-071 前世档案(20分) 网络世界中时常会遇到这类滑稽的算命小程序,实现原理很简单,随便设计几个问题,根据玩家对每个问题的回答选择一条判断树中的路径(如下图所示),结论就是路径终…

L1-071 前世档案(20分)

网络世界中时常会遇到这类滑稽的算命小程序,实现原理很简单,随便设计几个问题,根据玩家对每个问题的回答选择一条判断树中的路径(如下图所示),结论就是路径终点对应的那个结点。

path.jpg

现在我们把结论从左到右顺序编号,编号从 1 开始。这里假设回答都是简单的“是”或“否”,又假设回答“是”对应向左的路径,回答“否”对应向右的路径。给定玩家的一系列回答,请你返回其得到的结论的编号。

输入格式:

输入第一行给出两个正整数:N(≤30)为玩家做一次测试要回答的问题数量;M(≤100)为玩家人数。

随后 M 行,每行顺次给出玩家的 N 个回答。这里用 y 代表“是”,用 n 代表“否”。

输出格式:

对每个玩家,在一行中输出其对应的结论的编号。

输入样例:

3 4
yny
nyy
nyn
yyn

输出样例:

3
5
6
2

题解:

/***有题目可知,最小值为1,即结论1,最大值是结论2^N当为y的时候,表示是左子树,因此,原有值不需要改动 当为n时,表示在右子树,此时需要在原有值的基础上 加上 当前结点所有的叶节点的一半 */#include <stdio.h>
#include <string.h>
#include <math.h>char str[35];
int N = 0, M = 0;int main()
{scanf("%d %d",&N, &M);int k = pow(2, N);    // 计算出最大结论值 int index = 0, n = 0;for(int i = 0; i < M; i++){ index = 1;    // 每次循环,都要将结论值赋值为1 n = k;        // 修改当前结点所拥有的叶节点,这个时候是根节点,所以置为 k scanf("%s",str);for(int j = 0; j < strlen(str); j++){ // 遍历输入的字符串 if(str[j] == 'n'){    // 若为 n ,则表示需要加上当前结点所拥有的叶节点个数的一半 index += (n / 2);}n /= 2;    // 每次循环,叶节点的数量都会减半 }printf("%d\n", index);    // 输出结果即可 }return 0;
}
http://www.sczhlp.com/news/89324/

相关文章:

  • 留言网站模板安卓网站客户端制作
  • 宁波网站优化三视觉平面设计网
  • 高端网站制作哪家好wordpress 加载 蛮
  • 网站开发合同及报价单九度互联网站制作效果
  • 电商网站做导购wordpress主题mirana
  • 通辽做网站的公司网站空间地址查询
  • 什么网站可以免费发布招聘信息基于thinkphp网站制作
  • 寺院的网站怎么做网站维护的注意事项
  • 啤酒网站建设微信分销系统价格
  • 网站流量盈利模式广州小程序制作开发
  • 温州网站建设选择乐云seo管理手机网站首页
  • 可以免费申请试用的网站马尔康网站建设
  • 网站开发工作总结报告台州网站建设推广公司
  • 温江区网站建设哪个行业对网站建设需求大
  • 网站建设需求计划百度网站建设如何
  • 大腕 网站建设十大网站app软件
  • 简单的企业网站广安专业网站建设报价
  • 成武菏泽网站建设设计图网站
  • 网站上的地图导航怎么做门户网站目标客户
  • 优秀高端网站建设服务商无锡网站服务公司
  • 宜昌建站珠海建设局网站查公司业绩
  • 分享10 个百度资源网盘搜索的网站大全
  • 做团购的网站有哪些怎么建设个人网站 新手学做网站
  • 免费企业网站建设条件瑞安做网站多少钱
  • 公司企业网站建设哈尔滨寸金网站建设公司口碑
  • 东莞网站建设工作企业如何创建网站
  • 虚拟网站湛江有网站的公司名称
  • 上市的网站设计公司零基础自学网站建设
  • 织梦如何仿手机网站源码下载wordpress移动排版修改
  • 网站平台建设技术基础wordpress 聊天室