PTA L1-071 前世档案

news2024/9/27 5:44:27

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.coloradmin.cn/o/2164089.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CSS 实现元素根据自身位置进行偏移

代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><style>.item {…

UNI-SOP使用说明

UNI-SOP提供了两个集成客户端&#xff1a;SpringBoot2.x/JAVA1.8和SpringBoot3.x/JAVA17&#xff0c;满足不同项目的集成需求。 平台接入 使用UNI-SOP之前&#xff0c;业务平台需要进行接入&#xff0c;完成校验后才能正常使用&#xff0c;先引入客户端开发SKD包。 <depen…

UE4_后期处理七—仿红外线成像效果

效果图展示&#xff1a; 参考文档&#xff1a;https://dev.epicgames.com/documentation/zh-cn/unreal-engine/using-fresnel-in-your-unreal-engine-materials?application_version5.4 二、所用知识点扩充 在创建电影或过场动画时&#xff0c;你常常需要想办法更好地突显角…

追寻红色足迹,徐特立⾰命事迹连环画展在京举办

他是⽑泽东和⽥汉的⽼师&#xff0c;⽑泽东曾称赞他“坚强的老战士”&#xff1b;周恩来称赞他是“⼈⺠之光&#xff0c;我党之荣”&#xff1b;党中央评价他“对⾃⼰是学⽽不厌&#xff0c;对别⼈是诲⼈不倦”&#xff0c;他就是⽆产阶级⾰命教育家徐特⽴。 徐特⽴&#xff0c…

骨传导耳机哪个牌子最好用?实测五大实用型骨传导耳机分析!

在快节奏的现代生活中&#xff0c;耳机已成为我们不可或缺的伴侣。无论是在通勤路上、运动时&#xff0c;还是在安静的图书馆&#xff0c;耳机都能为我们提供一片属于自己的音乐天地。然而&#xff0c;长时间使用传统耳机可能会对听力造成损害&#xff0c;尤其是在高音量下。因…

FineReport决策报表中添加声音报警

JS实现决策报表中添加声音报警 JS实现为报表页面添加提示声音 HTML实现声音播放 本次操作参考以上第一个链接 1、添加报表块 report0 2、添加内容 <audio id"music1" src"../../help/alarm.mp3" controls"controls" loop"loop"…

物联网将如何影响全球商业?

互联网使人们能够交流&#xff0c;企业能够全天候不间断地跨洋跨洲持续运营。它重塑、颠覆并催生了新的产业&#xff0c;改变了人类与世界互动的方式。互联网曾经仅仅是一种方便、快捷、廉价的向世界各地发送信息的方式&#xff0c;而现在&#xff0c;只需打开或关闭任何连接到…

频谱分析仪:射频领域的多面手

频谱分析仪&#xff0c;作为射频领域的中心工具&#xff0c;其重要性不言而喻。它主要分为实时分析式和扫频式两大类&#xff0c;各自以其独特的方式在信号处理领域发挥着关键作用。实时分析式频谱仪能够即时捕获并分析非重复性、持续时间极短的信号&#xff0c;为科研人员提供…

Prometheus学习笔记(一)

一、简介 Prometheus是一款开源的监控系统&#xff0c;用于监控系统的各项指标参数&#xff0c;让开发运维人员能更好的掌控系统的运行状态。是云原生计算基金会项目&#xff0c;是一个系统和服务监控系统。它以给定的时间间隔从配置的目标收集指标&#xff0c;评估规则表达式…

YOLOv5物体检测

一、环境安装 1.1、anaconda安装 &#xff0c;根据官方地址一步步安装&#xff0c;此略过。 https://www.anaconda.com/download创建虚拟环境 conda create -n yolov5 python3.8配置国内源&#xff0c;加速下载 &#xff08;可选&#xff09; pip config set global.index…

在 Docker 中进入 Redis 容器后,可以通过以下方法查看 Redis 版本:

文章目录 1、info server2、redis-cli -v 1、info server [rootlocalhost ~]# docker exec -it spzx-redis redis-cli 127.0.0.1:6379> auth 123456 OK 127.0.0.1:6379> info server # Server redis_version:6.2.6 redis_git_sha1:00000000 redis_git_dirty:0 redis_bui…

kubernetes K8S 挂载分布式存储 ceph

目录 一、Ceph简介 二、Ceph核心组件介绍 三、安装Ceph集群 1初始化实验环境 1.1、配置静态IP&#xff1a; 1.2、配置主机名&#xff1a; 1.3、配置hosts文件&#xff1a; 1.4、配置互信 1.5、关闭防火墙 1.6、关闭selinux 1.7、配置Ceph安装源 1.8、配置时间同步 …

应用数据安全

一、数据安全概述 应用的安全性是一个应用能否成功的关键。 HarmonyOS提供了系统安全、IDE/工具安全以及应用安全生态等三个层面的安全能力。 1、系统安全层面 HarmonyOS通过完整性保护、漏洞防利用、安全可信环境等安全防护技术&#xff0c;从架构上支持了应用的安全运行&…

WebGIS开发四大开源框架对比

本篇文章主要介绍GIS开发四大地图框架的差异和特点。 Cesium: Cesium是目前主流的一款三维地图框架&#xff0c;支持桌面端、web端、移动端等多平台。Mapbox&#xff1a;高清经纬度矢量瓦片&#xff0c;个性化前端表达&#xff0c;前端矢量绘制&#xff0c;支持海量地名地址。…

小白学大模型:自定义信息抽取Agent

自然语言处理&#xff08;NLP&#xff09;是人工智能和语言学领域的分支&#xff0c;它致力于使计算机能够理解、解释和生成人类语言。信息抽取和信息生成是NLP中的两个基础任务&#xff1a; 信息抽取是从文本中自动识别出结构化信息的过程。这些信息通常是实体&#xff08;如人…

APO的告警关联和告警故障影响面功能介绍

一般IT系统都会配置一系列告警来提醒运维或开发人员&#xff0c;系统存在问题。将告警进行分类之后&#xff0c;至少会有以下种类的告警&#xff1a; 系统运行资源告警&#xff08;CPU、内存、磁盘&#xff09; 网络质量告警Kubernetes事件告警应用级别告警&#xff08;延时、错…

Java项目: 基于SpringBoot+mybatis+maven中小型医院网站管理系统(含源码+数据库+开题报告+毕业论文)

一、项目简介 本项目是一套基于SpringBootmybatismaven中小型医院网站管理系统 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目附带全部源码可作为毕设使用。 项目都经过严格调试&#xff0c;eclipse或者idea 确保可以运行&#xff01; 该系统功能完善、界面美观、…

逻辑回归函数求导过程自推 LaTex 语法

背景 之前对逻辑归回函数求导过程进行过推导&#xff0c;当时不会用公式编辑&#xff0c;直接在纸上手动推导的&#xff0c;再重写一下&#xff0c;顺便回顾一下数学知识。 逻辑回归函数 逻辑回归的数学函数表达式为&#xff1a; g ( z ) 1 1 e − 2 g(z)\frac{1}{1e^{-2…

光控资本:国企改革概念股是什么意思?

国企改革概念股是指与国有企业改革相关的上市公司股票。 这些国企获益于国企改革方针&#xff0c;并有望在改革进程中完结企业运营结构优化、企业竞争力加强、运营效果添加、股票估值提高。相关国企股票的商场表现通常会遭到国企改革方针开展、企业改革成效、商场全体行情等多…

轻松编排工作流,浅谈DolphinScheduler如何使用Python调用API接口?

最近&#xff0c;在做某大型零售企业项目时&#xff0c;有客户用到DolphinScheduler&#xff0c;并咨询是否可以用Python脚本编排工作流&#xff1f;该如何实现&#xff1f;相信有很多人会有这样的疑问&#xff0c;那么&#xff0c;本文将为我们简单分享DolphinScheduler的优势…