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

简单递归题

本来不想用递归做的,最后还是用了

题目如下:

洪尼玛有 n 块长度不同的木板,他想用这些木板拼成一个等边三角形的围栏,好将他的草泥马养在这个围栏里面。现在,给你这 n 块木板的长度,洪尼玛想知道他能否拼成这个围栏?要求:n 块木板都得用上。
输入格式:
第一行为一个正整数 T ,表示有 T 组测试数据。
对于每组测试数据,第一行为一个正整数 n ,表示木板个数;第二行包含 n 个正整数,表示每块木板的长度。
对于 60% 的数据,1≤T≤5,3≤n≤5,每块木板长度大于等于 1 小于等于 100。
对于 100% 的数据,1≤T≤5,3≤n≤10 ,每块木板长度大于等于 1 小于等于 100 。
输出格式:
对于每一组测试数据输出一行。
如果能拼成围栏输出 Yes ,否则输出 No 。
输入样例:
2
4
1 2 3 4
4
1 2 3 3

高中同学问的

最后是用了递归,受不了,本来以为找到了一个优解,最后是根本不行

还是用了递归

代码如下:

#include<stdio.h>
void sort(int num[], int n);
int dg(int num[], int idx, int sum);
int tmp, occ[10];int main(void)
{int T, n;int plank[10];scanf("%d", &T);//开始输入并处理for(int x = 0; x < T; x++){scanf("%d", &n);for(int i = 0; i < n; i++){scanf("%d", &plank[i]);tmp += plank[i];}if(tmp % 3){printf("No");break;}tmp /= 3;//排序sort(plank, n);//判断行不行if(dg(plank, n - 1, plank[n - 1]) && dg(plank, n - 2, plank[n - 2])  && dg(plank, n - 3, plank[n - 3]))printf("Yes");elseprintf("No");}
}
void sort(int num[], int n)
{for(int i = 0; i < n - 1; i++)for(int j = i + 1; j < n; j++)if(num[i] > num[j])num[i] ^= num[j] ^= num[i] ^= num[j];return;
}
int dg(int num[], int idx, int sum)
{if(sum > tmp || occ[idx])  return 0;else if(sum == tmp)  {occ[idx] = 1; return 1;}occ[idx] = 1;for(int i = idx - 1; i >= 0; i--)if(dg(num, i, sum + num[i]))return 1;return 0;
}

相关文章:

简单递归题

本来不想用递归做的&#xff0c;最后还是用了 题目如下&#xff1a; 洪尼玛有 n 块长度不同的木板&#xff0c;他想用这些木板拼成一个等边三角形的围栏&#xff0c;好将他的草泥马养在这个围栏里面。现在&#xff0c;给你这 n 块木板的长度&#xff0c;洪尼玛想知道他能否拼…...

再生式收音机踩坑记

下载《A Simple Regen Radio for Beginners》这篇文章也有好几年了&#xff0c;一直没有动手&#xff0c;上周末抽空做了一个&#xff0c;结果相当令人沮丧&#xff0c;一个台也收不到&#xff0c;用示波器测量三极管振荡波形&#xff0c;只有在调节再生电位器R2过程中&#xf…...

稻谷飘香金融助力——建行江门市分行助力乡村振兴

7月的台山&#xff0c;稻谷飘香。在大耕户李胜业的农田里&#xff0c;金灿灿的稻谷翻起层层稻浪&#xff0c;收割机在稻浪里来回穿梭&#xff0c;割稻、脱粒、装车等工序一气呵成。空气中弥漫着丰收的喜悦。 夏粮迎丰收的背后&#xff0c;是中国建设银行江门市分行&#xff08…...

【Pytorch】Visualization of Feature Maps(1)

学习参考来自 CNN可视化Convolutional Featureshttps://github.com/wmn7/ML_Practice/blob/master/2019_05_27/filter_visualizer.ipynb 文章目录 filter 的激活值 filter 的激活值 原理&#xff1a;找一张图片&#xff0c;使得某个 layer 的 filter 的激活值最大&#xff0c…...

js修改浏览器地址栏里url的方法

1、更新url某一参数的值 function updateQueryStringParameter(uri, key, value) {if (!value) { return uri }var re new RegExp("([?&])" key ".*?(&|$)", "i");var separator uri.indexOf(?) ! -1 ? "&" : &q…...

正则表达式(Java)(韩顺平笔记)

正则表达式&#xff08;Java&#xff09; 底层实现 package com.hspedu.RegExp;import java.util.regex.Matcher; import java.util.regex.Pattern;public class RegExp00 {public static void main(String[] args) {String content "1998年12月8日&#xff0c;第二代J…...

LLVM学习笔记(62)

4.4.3.3.2. 指令处理的设置 4.4.3.3.2.1. 目标机器相关设置 除了基类以外&#xff0c;X86TargetLowering构造函数本身也是一个庞然大物&#xff0c;我们必须要分段来看。V7.0做了不小的改动&#xff0c;改进了代码的结构&#xff0c;修改了一些指令的设置。 100 X86Targ…...

解决Spring Boot应用在Kubernetes上健康检查接口返回OUT_OF_SERVICE的问题

现象 在将Spring Boot应用部署到Kubernetes上时&#xff0c;健康检查接口/healthcheck返回的状态为{"status":"OUT_OF_SERVICE","groups":["liveness","readiness"]}&#xff0c;而期望的是返回正常的健康状态。值得注意的…...

Java对象逃逸

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、商业变现、人工智能等&#xff0c;希望大家多多支持。 未经允许不得转载 目录 一、导读二、概览三、相关知识3.1 逃逸…...

Greenplum的数据库年龄检查处理

概述 Greenplum是基于Postgresql数据库的分布式数据库&#xff0c;而PG数据库在事务及多版本并发控制的实现方式上很特别&#xff0c;采用的是递增事务id的方法&#xff0c;事务id大的事务&#xff0c;认为比较新&#xff0c;反之事务id小&#xff0c;认为比较旧。 事务id的上…...

[HCIE] IPSec-VPN (IKE自动模式)

概念&#xff1a; IKE&#xff1a;因特网密钥交换 实验目标&#xff1a;pc1与pc2互通 步骤1&#xff1a;R1与R3配置默认路由 R1&#xff1a; ip route-static 0.0.0.0 0.0.0.0 12.1.1.2 R2&#xff1a; ip route-static 0.0.0.0 0.0.0.0 23.1.1.2 步骤2&#xff1a;配ACL…...

Qt/QML编程学习之心得:一个Qt工程的学习笔记(九)

这里是关于如何使用Qt Widget开发,而Qt Quick/QML的开发是另一种方式。 1、.pro文件 加CONFIG += c++11,才可以使用Lamda表达式(一般用于connect的内嵌槽函数) 2、QWidget 这是Qt新增加的一个类,基类,窗口类,QMainWindow和QDialog都继承与它。 3、Main函数 QApplicati…...

c++ 课程笔记

105课: cpp文件分为 .h .cpp .cpp 文件 110课:124课 深拷贝 浅拷贝 自建拷贝构造解决浅拷贝释放new后堆区析构函数的问题 (浅拷贝 拷贝内存地址, 释放堆区时 导致源数据 释放时,该地址无数据?而报错) 浅拷贝: 拷贝了对方的值和 堆区内存地址(删除 影响原数据堆区) 深拷贝…...

ELK企业级日志分析平台——ES集群监控

启用xpack认证 官网&#xff1a;https://www.elastic.co/guide/en/elasticsearch/reference/7.6/configuring-tls.html#node-certificates 在elk1上生成证书 [rootelk1 ~]# cd /usr/share/elasticsearch/[rootelk1 elasticsearch]# bin/elasticsearch-certutil ca[rootelk1 ela…...

Twincat使用:EtherCAT通信扫描硬件设备链接PLC变量

EtherCAT通信采用主从架构&#xff0c;其中一个主站设备负责整个EtherCAT网络的管理和控制&#xff0c;而从站设备则负责在数据环网上传递数据。 主站设备可以是计算机、工控机、PLC等&#xff0c; 而从站设备可以是传感器、执行器、驱动器等。 EL3102:MDP5001_300_CF8D1684;…...

手机APP-MCP走蓝牙无线遥控智能安全帽~执法记录仪~拍照录像,并可做基础的配置,例如修改服务器IP以及配置WiFi等

手机APP-MCP走蓝牙无线遥控智能安全帽~执法记录仪~拍照录像,并可做基础的配置,例如修改服务器IP以及配置WiFi等 手机APP-MCP走蓝牙无线遥控智能安全帽~执法记录仪~拍照录像,并可做基础的配置,例如修改服务器IP以及配置WiFi等&#xff0c; AIoT万物智联&#xff0c;智能安全帽…...

网络互联与IP地址

目录 网络互联概述网络的定义与分类网络的定义网络的分类 OSI模型和DoD模型网络拓扑结构总线型拓扑结构星型拓扑结构环型拓扑结构 传输介质同轴电缆双绞线光纤 介质访问控制方式CSMA/CD令牌 网络设备网卡集线器交换机路由器总结 IP地址A、B、C类IP地址特殊地址形式 子网与子网掩…...

Android设计模式--模板方法模式

一&#xff0c;定义 定义一个操作中的算法的框架&#xff0c;而将一些步骤延迟到子类中&#xff0c;使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 在面向对象的开发过程中&#xff0c;通常会遇到这样一个问题&#xff0c;我们知道一个算法所需的关键步…...

大语言模型——BERT和GPT的那些事儿

前言 自然语言处理是人工智能的一个分支。在自然语言处理领域&#xff0c;有两个相当著名的大语言模型——BERT和GPT。两个模型是同一年提出的&#xff0c;那一年BERT以不可抵挡之势&#xff0c;让整个人工智能届为之震动。据说当年BERT的影响力是GPT的十倍以上。而现在&#…...

Docker 命令详解

1. 容器生命周期管理 命令说明文档run创建一个新的容器并运行一个命令Docker run 命令start/stop/restart启动、停止、重启容器Docker start/stop/restart 命令kill杀掉一个运行中的容器Docker kill 命令rm删除一个或多个容器Docker rm 命令pause/unpause暂停 恢复容器中所有的…...

手机号码定位革命性工具:从陌生来电到精准地理定位的智能解决方案

手机号码定位革命性工具&#xff1a;从陌生来电到精准地理定位的智能解决方案 【免费下载链接】location-to-phone-number This a project to search a location of a specified phone number, and locate the map to the phone number location. 项目地址: https://gitcode.…...

Qwen3-4B-Thinking-Gemini-Distill效果展示:数学竞赛题构造性证明推演

Qwen3-4B-Thinking-Gemini-Distill效果展示&#xff1a;数学竞赛题构造性证明推演 1. 模型概述 Qwen3-4B-Thinking-2507-Gemini-Distill是基于Qwen3-4B-Thinking-2507的社区蒸馏版本&#xff0c;由TeichAI使用Gemini 2.5 Flash生成的5440万tokens监督微调而成。该模型通过强制…...

从IPv4到IPv6:在华为eNSP上迁移静态路由配置,你需要知道的几个关键差异点

从IPv4到IPv6&#xff1a;华为eNSP静态路由迁移实战指南 如果你已经熟练掌握了华为设备上IPv4静态路由的配置&#xff0c;第一次在eNSP中配置IPv6静态路由时&#xff0c;可能会感到既熟悉又陌生。就像一位习惯右手写字的人突然尝试用左手——基础原理相通&#xff0c;但具体操作…...

避坑指南:ISP图像调试中那些‘奇怪’问题的来源与解法(DPC坏点、LSC暗角、Color Shading)

避坑指南&#xff1a;ISP图像调试中那些‘奇怪’问题的来源与解法 在摄像头模组量产或项目集成阶段&#xff0c;工程师们常常会遇到一些看似"奇怪"的图像质量问题——固定位置的坏点、画面四周莫名偏暗或偏色、白平衡突然失准。这些问题往往不是单一因素导致&#xf…...

2025届学术党必备的十大AI写作神器解析与推荐

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 如今&#xff0c;人工智能辅助毕业论文撰写成为备受学术领域瞩目的重要议题&#xff0c;随着…...

【仅限首批2000名VSCode Insider】:获取VSCode 2026多智能体协同私有扩展包(含Agent权限沙箱+可信执行环境TEEs预编译模块)

https://intelliparadigm.com 第一章&#xff1a;VSCode 2026多智能体协同架构概览 VSCode 2026 引入了原生支持的多智能体协同&#xff08;Multi-Agent Collaboration, MAC&#xff09;架构&#xff0c;将编辑器从单用户工具升级为分布式智能工作流中枢。该架构基于轻量级 WA…...

SwiftUI程序化导航与深度链接终极指南:Push通知和路由管理完全教程

SwiftUI程序化导航与深度链接终极指南&#xff1a;Push通知和路由管理完全教程 【免费下载链接】clean-architecture-swiftui SwiftUI sample app using Clean Architecture. Examples of working with SwiftData persistence, networking, dependency injection, unit testing…...

终极Docker镜像安全指南:如何用Dive揪出CVE漏洞隐患

终极Docker镜像安全指南&#xff1a;如何用Dive揪出CVE漏洞隐患 【免费下载链接】dive A tool for exploring each layer in a docker image 项目地址: https://gitcode.com/GitHub_Trending/di/dive Dive是一款强大的Docker镜像探索工具&#xff0c;能够帮助开发者深入…...

告别沉浸式适配烦恼:Android状态栏颜色与字体样式一键配置指南(附完整代码)

Android状态栏终极适配指南&#xff1a;从原理到实战的一站式解决方案 每次看到设计稿上那个完美的状态栏效果&#xff0c;再看看自己App里参差不齐的显示效果&#xff0c;是不是有种想砸键盘的冲动&#xff1f;不同Android版本、不同厂商ROM的状态栏适配&#xff0c;堪称移动…...

力诺特玻亮相第139届广交会 展示中国耐热玻璃硬核实力

4月23日&#xff0c;第139届中国进出口商品交易会第二期“品质家居”主题展正式开幕。本届展会紧扣“新、绿、智”主线&#xff0c;聚焦新兴赛道与未来产业&#xff0c;深度对接全球采购新趋势。深耕高硼硅耐热玻璃30年&#xff0c;力诺特玻&#xff08;301188.SZ&#xff09;携…...