【4.12日题解】——美国血统

简介: 【4.12日题解】——美国血统

☘前言☘

今日份水题开始。希望有想要提高的同学跟我们一起来刷题0.0

4.12日每日一题——美国血统


🧑🏻作者简介:一个从工业设计改行学嵌入式的年轻人

✨联系方式:2201891280(QQ)

⏳全文大约阅读时间: 20min


全文目录

☘前言☘

解题思路

📑写在最后

P1827 [USACO3.4] 美国血统 American Heritage


解题思路

这部分其实是考研的重点,太长时间不用都快忘记了,其实思路就是分割字符串,比如给的样例。


ABEDFCHG

CBADEFGH


分割之后的样子就应该是:


[ABEDF]C[HG]

C[BADEF][GH]


这个对应着代码去看下标就能理解了。


#include <cstdio>

#include <cstring>

#include <cstdlib>



struct node{
    char val;
    struct node *left, *right;
};
struct node *noot;
char zhongxu[30], prev[30];
void create(int zleft, int zright, int pleft,int pright,node **root){//生成树
    if(zleft > zright || pleft > pright)    return;//直接就是空啦
    int i,j;
    for(i = pleft, j = zleft;i < pright;i++,j++)    //查找分割点
        if(zhongxu[j] == prev[pleft]) break;
    (*root) = (struct node *)malloc(sizeof(struct node));   //建立节点
    node *p = *root;
    p->val = prev[pleft];
    p->left = p->right = NULL;
    create(zleft,j-1,pleft+1, i,&p->left);  //创建左子树
    create(j+1,zright,i+1,pright,&p->right);    //创建右子树
}
void hou(node *p){  //后续遍历
    if(p){
        hou(p->left);
        hou(p->right);
        putchar(p->val);
    }
}
int main(){
    scanf("%s %s",zhongxu,prev);
    node *root;
    create(0,strlen(zhongxu) - 1,0, strlen(prev) - 1,&root);
    hou(root);
}



相关文章
|
关系型数据库 MySQL 数据安全/隐私保护
查看mysql 默认端口号和修改端口号
1. 登录mysql mysql -u root -p //输入密码    2. 使用命令show global variables like 'port';查看端口号 mysql> show global variables like 'port';    3. 修改端口,编辑/etc/my.cnf文件,早期版本有可能是my.conf文件名,增加端口参数,并且设定端口,注意该端口未被使用,保存退出。
23038 0
|
Oracle 安全 Java
Java GUI框架选择什么?Swing,SWT,AWT,SwingX,JGoodies,JavaFX,Apache Pivot?
Java GUI框架选择什么?Swing,SWT,AWT,SwingX,JGoodies,JavaFX,Apache Pivot?
1976 0
|
移动开发 JavaScript 测试技术
3种浏览器性能测试
1、Javascript性能测试(Google的V8 Javascript引擎) 测试地址:http://v8.googlecode.com/svn/data/benchmarks/v6/run.html            谷歌浏览器版本32    IE浏览器版本11 火狐浏览器版本28 2、页面加载速度测试(Nontroppo) 测试地址:http://n
2628 0
|
8天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!
|
7天前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
本文讲解 Prompt 基本概念与 10 个优化技巧,结合学术分析 AI 应用的需求分析、设计方案,介绍 Spring AI 中 ChatClient 及 Advisors 的使用。
348 130
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
|
19天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1335 8
|
7天前
|
人工智能 Java API
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
本文介绍AI大模型的核心概念、分类及开发者学习路径,重点讲解如何选择与接入大模型。项目基于Spring Boot,使用阿里云灵积模型(Qwen-Plus),对比SDK、HTTP、Spring AI和LangChain4j四种接入方式,助力开发者高效构建AI应用。
336 122
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
|
6天前
|
监控 JavaScript Java
基于大模型技术的反欺诈知识问答系统
随着互联网与金融科技发展,网络欺诈频发,构建高效反欺诈平台成为迫切需求。本文基于Java、Vue.js、Spring Boot与MySQL技术,设计实现集欺诈识别、宣传教育、用户互动于一体的反欺诈系统,提升公众防范意识,助力企业合规与用户权益保护。