AcWing 4609:火柴棍数字 ← 贪心算法

【题目来源】
https://www.acwing.com/problem/content/4612/

【题目描述】
给定 n 个火柴棍,你可以用它们摆出数字 0∼9。
摆出每个数字所需要的具体火柴棍数量如下图所示:

请你用这些火柴棍摆成若干个数字,并把这些数字排成一排组成一个整数,要求组成的整数尽可能大。
输出可以摆成的最大可能整数。

【输入格式】
第一行包含整数 T,表示共有 T 组测试数据。
每组数据占一行,包含一个整数 n。表示火柴根数。

【输出格式】
输出可以摆成的最大可能整数。

【数据范围】
前 3 个测试点满足 1≤t≤10。
所有测试点满足 1≤t≤100,2≤n≤10^5,同一测试点内所有 n 相加之和不超过 10^5。

【输入样例】
10
2
3
4
5
6
7
8
9
10
11

【输出样例】
1
7
11
71
111
711
1111
7111
11111
71111

【算法分析】
○ 给定的火柴棍数字中,凑出 1 需要 2 根火柴,凑出 7 需要 3 根火柴 ……
○ 位数越多的数,代表的数越大。
○ 而给定一个数,能凑出的最大位数为:
   若 n 为偶数,则最多能凑出 n/2 位,每位为 1;
   若 n 为奇数,依然能最多能凑出 n/2 位,其中最高位为 7,其他 n/2-1 位均为 1。

【算法代码】

#include <bits/stdc++.h>
using namespace std;int main() {int T;cin>>T;while(T--) {int n;cin>>n;if(n%2==0) cout<<1;else cout<<7;for(int i=1; i<n/2; i++) cout<<1;cout<<endl;}
}/*
in:
10
2
3
4
5
6
7
8
9
10
11out:
1
7
11
71
111
711
1111
7111
11111
71111
*/



【参考文献】
https://www.acwing.com/video/4299/
https://www.acwing.com/solution/content/136165/






 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/779008.shtml

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

相关文章

Git版本管理使用手册 - 8 - 合并分支、解决冲突

合并整个开发分支 切换到本地test分支&#xff0c;选择右下角远程开发分支&#xff0c;选择Merge into Current。然后提交到远程test仓库。 合并某次提交的代码 当前工作区切换成test分支&#xff0c;选择远程仓库中的dev开发分支&#xff0c;选择需要合并的提交版本右击&a…

SQL Server 实验二:数据库视图的创建和使用

目录 第一关 相关知识 什么是表 操作数据表 创建数据表 插入数据 修改表结构 删除数据表 编程要求 第一关实验代码&#xff1a; 第二关 相关知识 视图是什么 视图的优缺点 视图的优点 视图的缺点 操作视图 创建视图 通过视图向基本表中插入数据 通过视图修改基本表的…

由浅到深认识Java语言(37):I/O流

该文章Github地址&#xff1a;https://github.com/AntonyCheng/java-notes 在此介绍一下作者开源的SpringBoot项目初始化模板&#xff08;Github仓库地址&#xff1a;https://github.com/AntonyCheng/spring-boot-init-template & CSDN文章地址&#xff1a;https://blog.c…

第十三章 Tomcat优化

一、Tomcat 优化 Tomcat 下载地址&#xff1a;https://archive.apache.org/dist/tomcat 1.1 源码导入 1. 下载对应的 tomcat 版本源码&#xff08;Tomcat8.0.11&#xff09; 2. 源码根目录下创建 pom.xml 文件 3. 将源码导入 idea 中 1.2 Web 容器 - Connector.initIntern…

【LeetCode热题100】20. 有效的括号(栈)

一.题目要求 给定一个只包括 ‘(’&#xff0c;‘)’&#xff0c;‘{’&#xff0c;‘}’&#xff0c;‘[’&#xff0c;‘]’ 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。…

win10配置CLion2022+ubuntu20.04远程部署

背景 在博文ubunut搭建aarch64 cuda交叉编译环境记录中&#xff0c;使用的ubuntu20.04虚拟机安装eclipse来交叉编译aarch64的程序&#xff0c;然后发送到jetson板子上执行。开发一段时间后发现eclipse IDE使用起来不太便捷&#xff0c;因此&#xff0c;考虑使用CLion IDE&…

【数字孪生平台】使用 Three.js 以 3D 形式可视化日本新宿站地图

在本文中&#xff0c;我们将使用日本新宿站的室内地图数据&#xff0c;并使用 Three.js 将其进行 3D 可视化。更多精彩内容尽在数字孪生平台。 使用的数据 这次&#xff0c;我们将使用日本空间信息中心发布的“新宿站室内地图开放数据”的集成版本&#xff08;ShapeFile&#…

软考倒计时58天!高效备考的方法有这些!

距离2024年上半年软考正式考试还剩58天的时间&#xff0c;留给考生的备考时间越来越少。而且有很多考生都是上班族&#xff0c;每天的学习时间非常有限。为此&#xff0c;为各位考生提供了一些高效备考方法&#xff0c;帮助大家科学备考。 01、合理分配学习时间 每个科目都有…

网络安全新视角:数据可视化的力量

在当今数字化时代&#xff0c;网络安全已成为各大企业乃至国家安全的重要组成部分。随着网络攻击的日益复杂和隐蔽&#xff0c;传统的网络安全防护措施已难以满足需求&#xff0c;急需新型的解决方案以增强网络防护能力。数据可视化技术&#xff0c;作为一种将复杂数据转换为图…

Weblogic10.3.6补丁升级

由oracle官方发布的漏洞公告&#xff0c;对weblogic进行补丁升级。本文介绍的是weblogic安装的版本为10.3.6.0&#xff0c;如果你使用的是其他版本的请根据实际版本来选择下载 对于weblogic补丁升级&#xff0c;具体步骤如下&#xff1a; 1、首先需要下载weblogic补丁程序 2…

简单了解原型模式

什么是原型模式 区别于单例模式&#xff0c;原型模式的一个类可以有多个实例化的对象。 原型模式通过拷贝来产生新的对象&#xff0c;而不是new&#xff0c;并且可以根据自己的需求修改对象的属性。 实现Cloneable接口实现拷贝 而拷贝又分为浅拷贝和深拷贝&#xff0c;两者在…

AI赋能微服务:Spring Boot与机器学习驱动的未来应用开发

&#x1f9d1; 作者简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟。提供嵌入式方向的学习指导、简历面…

Compose UI 之 FloatingActionButton 按钮

FAB(Floating Action Button) FAB 是最具突出效果的悬浮按钮,出现在屏幕右下角。通常位于屏幕右下角,具有显著的圆形形状和浮动的定位,用于呈现应用程序的主要操作或常用操作,例如开始一个新的任务、分享内容、启动一个动作等。 Compose UI 库中,FAB 的样式有 4 种。 …

HarmonyOS入门--页面和自定义组件生命周期

文章目录 页面和自定义组件生命周期页面生命周期组件生命周期生命周期的调用时机 页面和自定义组件生命周期 生命周期流程如下图所示&#xff0c;下图展示的是被Entry装饰的组件&#xff08;首页&#xff09;生命周期。 自定义组件和页面的关系&#xff1a; 自定义组件&…

表单输入绑定 值绑定

值绑定​ 对于单选按钮&#xff0c;复选框和选择器选项&#xff0c;v-model 绑定的值通常是静态的字符串 (或者对复选框是布尔值)&#xff1a; <!-- picked 在被选择时是字符串 "a" --> <input type"radio" v-model"picked" value&qu…

MySQL5.7源码分析--连接

一、连接协议支持 mysql支持4种通信协议&#xff1a;TCP/IP协议、Unix Socket协议、Share Memory协议、NT管道 windows支持三种连接方式&#xff1a;TCP/IP协议、Share Memory协议、NT管道 unix支持两种连接方式&#xff1a;TCP/IP协议、Unix Socket协议 协议介绍如下&…

【C++】动态内存分配 与 对象的动态建立与释放

目录 动态建立和释放动态创建数组销毁堆对象销毁动态创建的数组 对象的动态建立与释放 动态建立和释放 new操作符动态分配内存建立的变量&#xff0c;称为“堆对象”或者“在动态存储中分配”。 new运算符创建的堆对象一直存在&#xff0c;直到使用delete运算符显示的销毁。ne…

[flask]http请求//获取请求体数据

import jsonfrom flask import Flask, requestapp Flask(__name__)app.route("/form1", methods["post"]) def form1():"""获取客户端请求的请求体[表单]:return:""""""获取表单数据请求url&#xff1a;&qu…

2024-03-29 问AI: 介绍一下ASM模型( Active Shape Model )

文心一言 ASM模型&#xff0c;即Active Shape Model&#xff08;主动形状模型&#xff09;&#xff0c;是Cootes于1995年提出的一种经典的人脸关键点检测算法。它基于点分布模型&#xff08;Point Distribution Model, PDM&#xff09;的算法&#xff0c;是一种对目标物体进行…

网络安全卷么?

官方宣传的是对的网络安全现在是朝阳行业&#xff0c;缺口是很大 不过网络安全行业就是需要技术很多的人达不到企业要求才导致人才缺口大 初级的现在有很多的运维人员转网络安全&#xff0c;初级也会慢慢的卷起来&#xff0c;但是岗位多不用怕&#xff0c;以后各大去也都会要网…