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

1. 小游戏(贪心)

   题干:

        谷同学很喜欢玩计算机游戏,特别是战略游戏,但是有时他不能尽快找到解所以常常感到很沮丧。现在面临如下问题:他必须在一个中世纪的城堡里设防,城堡里的道路形成一棵无向树。要在结点上安排最少的士兵使得他们可以看到所有边。你能帮助他吗?

        你的任务是给出士兵的最少数目。

        输入:包含多组数据。每组数据表示一棵树,在每组数据中:

        第一行是结点的数目。

        接下来的几行,每行按如下格式描述一个结点:结点标识符 : ( 道路的数目 ) 结点标识符1  结点标识符2  ......  结点标识符道路的数目

        或者

        结点标识符 : (0)

        对于 n (0<n<=1500) 个结点,结点标识符是一个从 0 到 n - 1 的整数。每条边在测试用例中只出现一次。

        对于每组数据,各给出一个整数表示士兵的最少数目。

测试输入期待的输出时间限制内存限制额外进程
测试用例 1以文本方式显示
  1. 4↵
  2. 0:(1) 1↵
  3. 1:(2) 2 3↵
  4. 2:(0)↵
  5. 3:(0)↵
  6. 5↵
  7. 3:(3) 1 4 2↵
  8. 1:(1) 0↵
  9. 2:(0)↵
  10. 0:(0)↵
  11. 4:(0)↵
以文本方式显示
  1. 1↵
  2. 2↵
1秒64M0

 

代码如下:

        这里和小学期的知识对应起来了。(动态规划dp[n][2]的设计)

#include <iostream>
#include <cstring>
using namespace std;const int MAXN = 1505;
int dp[MAXN][2], visited[MAXN], link[MAXN][MAXN];
void DFS(int root)
{visited[root] = 1;for (int i = 0; link[root][i] != -1; ++i){int m = link[root][i];if (!visited[m]){DFS(m);dp[root][1] += dp[m][0];dp[root][0] += min(dp[m][0], dp[m][1]);}}dp[root][0]++;
}
int main()
{int n;while (scanf("%d", &n) != EOF){memset(dp, 0, sizeof(dp));memset(visited, 0, sizeof(visited));memset(link, 0, sizeof(link));int node, next, temp, root;for (int i = 0; i < n; i++){scanf("%d:(%d)", &node, &next);root = (!i) ? node : root;int j = 0;for (; j < next; ++j){cin >> temp;link[node][j] = temp;}link[node][j] = -1;}DFS(root);cout << min(dp[root][0], dp[root][1]) << endl;}return 0;
}

相关文章:

1. 小游戏(贪心)

题干&#xff1a; 谷同学很喜欢玩计算机游戏&#xff0c;特别是战略游戏&#xff0c;但是有时他不能尽快找到解所以常常感到很沮丧。现在面临如下问题&#xff1a;他必须在一个中世纪的城堡里设防&#xff0c;城堡里的道路形成一棵无向树。要在结点上安排最少的士兵使得他们可以…...

记录 | c++打印变量类型

c打印变量类型: 使用 typeid(变量名).name() int main(){std::cout << "type of ss : " << typeid(ss).name() << std::endl; }...

nodejs_vue+vscode美容理发店会员管理系统un1dm

按照设计开发一个系统的常用流程来描述系统&#xff0c;可以把系统分成分析阶段&#xff0c;设计阶段&#xff0c;实现阶段&#xff0c;测试阶段。所以在编写系统的说明文档时&#xff0c;根据系统所处的阶段来描述系统的内容。 绪论&#xff1a;这是对选题的背景&#xff0c;意…...

C语言 操作符详解

C语言学习 目录 文章目录 前言 一、算术操作符 二、移位操作符 2.1 左移操作符 2.2 右移操作符 三、位操作符 3.1 按位与操作符 & 3.2 按位或操作符 | 3.3 按位异或操作符 ^ 四、赋值操作符 五、单目操作符 5.1 逻辑反操作符&#xff01; 5.2 正值、负值-操作符 5.3 取地址…...

成为AI产品经理——回归模型评估(MSE、RMSE、MAE、R方)

分类问题的评估是看实际类别和预测类别是否一致&#xff0c;它的评估指标主要有混淆矩阵、AUC、KS。回归问题的评估是看实际值和预测值是否一致&#xff0c;它的评估指标包括MAE、MSE、RMSE、R方。 如果我们预测第二天某支股票的价格&#xff0c;给一个模型 y1.5x&#xff0c;…...

【C++11(一)】右值引用以及列表初始化

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:C从入门到精通⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学习C   &#x1f51d;&#x1f51d; C11 1. 前言2. 统一的列表初始化3. initializer…...

通俗理解Jenkins是什么?

目录 通俗理解 Jenkins是什么&#xff1f; 通俗理解 假设你有一个软件项目&#xff0c;多个开发者在一起写代码。每当有人提交新的代码时&#xff0c;你想要自动地构建、测试这些代码&#xff0c;确保它们没有引入问题。 Jenkins就像一个聪明的助手&#xff0c;会在有人提交…...

格雷希尔帮助仪器仪表测试时快速密封的G60C系列接头其优势有哪些

仪器仪表在工业领域中扮演着重要的角色&#xff0c;如&#xff1a;压力表&#xff0c;压力传感器、压力变送器、压力开关、压力歧管等这些&#xff0c;在工业领域中都是随处可见的&#xff0c;其数据的精度直接影响着产品在生产过程中的质量和安全性&#xff1b;因此&#xff0…...

系统运维工具KSysAK——让运维回归简单

系统运维工具KSysAK——让运维回归简单 1.基本信息 1.1概述 系统异常定位分析工具KSysAK是云峦操作系统研发及运维人员总结开发及运维经验&#xff0c;设计和研发的多个运维工具的集合&#xff0c;可以覆盖系统的日常监控、线上问题诊断和系统故障修复等常见运维场景。 工具…...

NowCoder | KY11 二叉树遍历

NowCoder | KY11 二叉树遍历 OJ链接 简单来说就是构建这个二叉树定义结构体通过递归方式根据输入的字符串构建二叉树。对于输入字符串中的每个字符&#xff0c;如果是 ‘#’ 表示空节点&#xff0c;否则创建一个新节点&#xff0c;并递归地构建左右子树。 #include <limit…...

android.view.WindowLeaked解决方法

问题 我在使用WindowManager添加一个button&#xff0c; windowManager.addView(button,layoutParams);然后关闭当前的这个Activity的时候遇到了WindowLeak这个问题&#xff0c;也就是所谓的窗体泄露。 原因 主要原因是因为android只允许在UI主线程操作&#xff0c;我在使用W…...

浪潮信息KeyarchOS的飞跃之路

1.背景 在正式向大家介绍KOS之前&#xff0c;我们先关注这样一些问题。 传统操作系统在大规模数据处理、高性能计算和人工智能应用方面面临着一些瓶颈问题&#xff0c;包括存储和访问效率、数据传输和通信效率、并行计算性能等等问题。为了能够更好的改进这些问题&#xff0c…...

C++基础 -41- 迭代器

每个stl 模板接口都有一个专用的迭代器 迭代器就是 stl 库中的 一个特殊指针&#xff0c;功能与指针类似(类似但不是) 迭代器定义格式 迭代器的使用,使用迭代器遍历向量容器的参数 代码运行结果 无论使用普通方式还是迭代器方式去都可以遍历vector容器...

zookeeper心跳检测 (实操课程)

本系列是zookeeper相关的实操课程&#xff0c;课程测试环环相扣&#xff0c;请按照顺序阅读来学习和测试zookeeper。 阅读本文之前&#xff0c;请先阅读----​​​​​​zookeeper 单机伪集群搭建简单记录&#xff08;实操课程系列&#xff09;zookeeper 客户端常用命令简单记录…...

社区新零售:重塑零售业的全新模式

社区新零售&#xff1a;重塑零售业的全新模式 近年来&#xff0c;新零售业成为了研究的焦点&#xff0c;它是一种以互联网为基础的零售形式。新零售通过运用先进技术手段&#xff0c;如大数据和人工智能&#xff0c;对商品的生产、流通和销售过程进行升级改造&#xff0c;重新构…...

北京华联BHGMall“宠粉模式”不断迭代,强体验注互动成行业UP主

在今年双11热度遇冷后&#xff0c;双十二被官宣取消&#xff0c;而这背后本质已经间接印证&#xff1a;传统“电商大促”的模式&#xff0c;已经难以为继。反观线下消费市场&#xff0c;则是以持续恢复和增长成为经济恢复的亮点&#xff0c;从线下客流量的快速回升&#xff0c;…...

前端时间的失败总结复盘

分享失败经验&#xff0c;前段时间的总结复盘&#xff1a; 与伙伴合作面对异常决策要及时提出质疑&#xff0c;怼&#xff0c;别太客气&#xff0c;客气起来&#xff0c;小心翼翼在意他人情绪那么这个项目就会让人难受&#xff0c;不要因为因为伙伴身上有标签/光环/权威就觉得…...

Ribbon 负载均衡

1、负载均衡整体流程 2、负载均衡流程逐级跟踪运行 (1) LoadBlanced 注解可以使LoadBalancerInterceptor拦截到&#xff1b; (2)LoadBalancerInterceptor 实现了ClientHttpRequestInterceptor接口&#xff1b; (3)ClientHttpRequestInterceptor接口释义如下&#xff1b; (4)int…...

微服务实战系列之Cache(技巧篇)

前言 凡工具必带使用说明书&#xff0c;如不合理的使用&#xff0c;可能得到“意外收获”。这就好比每个人擅长的领域有所差异&#xff0c;如果放错了位置或用错了人&#xff0c;也一定会让 Leader 们陷入两难之地&#xff1a;“上无法肩负领导之重托&#xff0c;下难免失去伙伴…...

6.17验证二叉树(LC98-M)

算法&#xff1a; 中序遍历下&#xff0c;输出的二叉搜索树节点的数值是有序序列。 有了这个特性&#xff0c;验证二叉搜索树&#xff0c;就相当于变成了判断一个序列是不是递增的了。 具体地&#xff1a;中序遍历时&#xff0c;判断当前节点是否大于中序遍历的前一个节点&a…...

【Linux】编译器-gcc/g++与调试器-gdb的使用

&#x1f440;樊梓慕&#xff1a;个人主页 &#x1f3a5;个人专栏&#xff1a;《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》《Linux》 &#x1f31d;每一个不曾起舞的日子&#xff0c;都是对生命的辜负 目录 前言 1.gcc/g语法 2.gcc的使用及…...

Google Guava 散列工具使用详解

文章目录 散列哈希函数哈希码布隆过滤器 散列 Guava 提供了一组散列&#xff08;哈希&#xff09;相关的工具类和方法&#xff0c;包括哈希函数接口、哈希算法实现、哈希码&#xff08;HashCode&#xff09;类、布隆过滤器&#xff08;BloomFilter&#xff09;等等。 Guava 提…...

AIGC-文生视频

stable diffusion的前传&#xff1a; 轻松理解 VQ-VAE&#xff1a;首个提出 codebook 机制的生成模型 - 知乎近两年&#xff0c;有许多图像生成类任务的前沿工作都使用了一种叫做"codebook"的机制。追溯起来&#xff0c;codebook机制最早是在VQ-VAE论文中提出的。相比…...

java中Collectors.groupingBy返回实例?

在Java中&#xff0c;Collectors.groupingBy()是一个用于对流元素进行分组的收集器。它可以根据指定的分类函数对流元素进行分组&#xff0c;并返回一个Map对象&#xff0c;其中键是分组的标准&#xff0c;值是属于相应组的元素列表。 下面是一个使用Collectors.groupingBy()方…...

uniapp打包的h5项目多了接口调用https://api.next.bspapp.com/client

产生跨域问题。 这个实际上是因为该项目在manifest.json文件中勾选了‘uni统计配置’导致的&#xff0c;取消勾选就可以了。 如果是小程序项目&#xff0c;在小程序开发者工具中添加可信任域名就可以了。 可以看看下面这个链接内容 uni-app H5跨域问题解决方案&#xff08;…...

探索跨境建站:如何借助软骨鱼SaaS平台快速搭建独立站

随着全球电子商务的蓬勃发展&#xff0c;作为一名资深的跨境电商从业者&#xff0c;我深知跨境建站服务需要与时俱进&#xff0c;不断迈向更高效、更智能的2.0时代。今天&#xff0c;我想和大家分享一个让我眼前一亮的解决方案——软骨鱼SaaS平台&#xff0c;这个平台彻底颠覆了…...

C语言-字符串输入输出

字符串赋值 char *t “title”;char *s;s t;并没有产生新的字符串&#xff0c;只是让指针s指向了t所指的字符串&#xff0c; 对s的任何操作就是对t做的 字符串输入输出 char string[8];scanf(“%s”, string);printf(“%s”, string);scanf读入一个单词&#xff08;到空格…...

OpenHarmony 设备启动Logo和启动视频替换指南

前言 OpenHarmony源码版本&#xff1a;4.0release 开发板&#xff1a;DAYU / rk3568 一、Logo替换 替换其中的logo.bmp 和 logo_kernel.bmp文件 注意事项&#xff1a; 1、图片的分辨率需要和设备匹配 2、如果是非首次编译&#xff08;存在缓存&#xff09;需要将out目录删…...

Python中函数添加超时时间,Python中signal使用

from time import time, sleepimport signal# 模拟要删除5条数据,中间有超时的i 5# 超时后执行的方法def timeout_handler(signal, frame):# 引发异常raise TimeoutError("删除第" str(i) "条,超时!")# 或者执行其他操作,不往外抛异常(超时的函数不会被…...

【C语言】递归详解

目录 1.前言2. 递归的定义3. 递归的限制条件4. 递归举例4.1 求n的阶乘4.1.1 分析和代码实现4.1.2 画图演示 4.2 顺序打印一个整数的每一位4.2.1 分析和代码实现4.2.2 画图推演 4.3 求第n个斐波那契数 5. 递归与迭代5.1 迭代求第n个斐波那契数 1.前言 这次博客内容是与递归有关&…...

长沙网站建设价格/网站设计与制作教程

2019独角兽企业重金招聘Python工程师标准>>> http://smallcultfollowing.com/babysteps/blog/categories/rust/ 转载于:https://my.oschina.net/innovation/blog/150099...

做网站模板在哪儿找/seo含义

1.定义 Define an interface for creating an object,but let subclasses decide which class to instantiate.Factory method let a class defer instantiation to subclasses.(定义一个用于创建对象的接口&#xff0c;让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟…...

网站建设管理方案/电话销售怎么找客户渠道

1、SAP成立于1972年&#xff0c;R/1基于大型主机于1973年推出2、R/2基于主机/终端两层&#xff0c;于1979年推出。R&#xff0c;Realtime的意思&#xff0c;实时3、三层时代&#xff1a;R/3基于客户端/应用服务中间层/数据层三层&#xff0c;于1992年推出。SAP有了统一GUI技术、…...

短网址生成设计/搜索引擎优化需要多少钱

后台系统所用的技术 框架&#xff1a;Spring SpringMVC Mybatisdubbo 前端&#xff1a;EasyUI 数据库&#xff1a;mysql 系统间通信 由于淘淘商城是基于SOA的架构&#xff0c;表现层和服务层是不同的工程。所以要实现商品列表查询需要两个系统之间进行通信。 如何实现远程通…...

共享互助医疗网站建设/西安楼市最新房价

什么是mock接口呢&#xff0c;举个栗子&#xff0c;你在一家电商公司&#xff0c;有查看商品、购物、支付、发 货、收获等等等一大堆功能&#xff0c;你是一个测试人员&#xff0c;测测测&#xff0c;测到支付功能的时候&#xff0c;你就要调用第三方支付接口了&#xff0c;真实…...

php源码建站 一品资源/手游推广平台代理

本文通过列举出一些常见的实例来分析Python3.0与2.X版本的区别&#xff0c;是作者经验的总结&#xff0c;对于Python程序设计人员来说有不错的参考价值。具体如下&#xff1a;做为一个前端开发的码农&#xff0c;最近通过阅读最新版的《A byte of Python》并与老版本的《A byte…...