【作业】文本左右对齐

序列化、字节对齐、字节序(C++) 记录下自己对这3个问题的理解,C++编程方式下 字节对齐,存在的意义:是因为C++下,写网络协议的时候,经常写成struct或类class,类似于下边 struct _arp{          unsigned short      arp_hrd;          unsigned short      arp_pro;          unsigned char 阅读详情

题目

题目来自leetcode

  1. 有N个单词的句子,要求每行限制在M个字符中显示,最左单词要向左对齐,最右单词向右对齐,空格要求平均分,不能时最左边的显示最多的空格

结论

输入:
“This”, “is”, “a”, “max”,
“word”, “line”, “test”, “,”,
“which”, “is”, “a”, “test”,
“of”,“leetcode”
在这里插入图片描述

代码

#pragma

#include <vector>
#include <iostream>
#include <string>
#include <sstream>
#include <optional>

using StrLst = std::vector<std::string>;

std::optional<std::string> get_max_width_line(const StrLst& lst, const int max_width) {
	std::stringstream strstr;
	StrLst::const_iterator cur = lst.begin();
	while (cur!=lst.end()) {
		int cur_width = 0;
		StrLst::const_iterator start = cur;
		for (; cur != lst.end(); ++cur) {
			cur_width += cur->size();
			if (cur_width > max_width)
				break;
			++cur_width; // add the blank
		}
		if (cur == start) {
			return std::optional<std::string>();
		}
		int words_width = 0;
		int words_count = 0;
		for (auto it = start; it != cur; ++it) {
			words_width += it->size();
			++words_count;
		}

		if (words_count > 1) {
			int each_bw = 0;
			int blank_width = max_width - words_width;
			int left_blank_width = blank_width;
			--words_count;
			each_bw = blank_width / words_count;
			auto end_word_it = start + words_count;
			strstr << *start;
			for (int i = 0; i < blank_width - each_bw * words_count; ++i)
				strstr << ' ';
			++start;
			for (; start != cur; ++start) {
				for (int i = 0; i < each_bw; ++i) {
					strstr << ' ';
				}
				strstr << *start;
				left_blank_width -= each_bw;
			}
		}
		else {
			strstr << *start;
		}
		strstr << std::endl;
	}
	return strstr.str();
}

void test_max_width_words(){
	StrLst strlst = {
		"This", "is", "a", "max",
		"word", "line", "test", ",",
		"which", "is", "a", "test", 
		"of","leetcode"
	};

	auto res = get_max_width_line(strlst, 15);
	if (res.has_value()) {
		std::cout << "Res is: " << std::endl << res.value();
	}
	else {
		std::cout << "There is no result!!";
	}
}
Word分栏排版进阶:如何实现左右栏独立编辑与中英文对照排版(解决内容错乱问题) 本文详细解析Word分栏排版进阶技巧,重点解决中英文对照排版中的内容错乱问题。通过对比文本框链接法、表格法和节分隔法三种方案,帮助用户实现左右栏独立编辑,提升专业文档制作效率。特别针对分栏排版的核心痛点,提供实用解决方案和高级格式设置技巧。 阅读详情

相关推荐

DepthVLM:重构VLM跨模态对齐实现稠密深度计量

稠密深度估计是具身智能、AR空间锚定与工业三维质检的核心基础能力,其本质是将视觉特征与物理尺度语义联合建模。传统方法依赖后挂式解码头,受限于分辨率敏感性与语言提示脆弱性;而基于跨模态对齐重构的技术路径,通过文本指令直接参与像素级深度生成,显著提升推理效率与尺度鲁棒性。关键突破在于语义空间投影器(SSP)实现逐像素文本-视觉注意力,以及尺度校准模块(SCM)引入语言驱动的物理尺度理解。该范式已在NYUv2、KITTI、Hypersim多场景验证,支持毫米级误差可控的稠密深度输出,为机器人导航、AR遮挡渲染与产

weixin_34337381的博客 423

ostringstream格式化字符串时左右对齐

ostringstream左右对齐 在编码过程中,熟悉c++的小伙子都会使用ostringstream进行符串格式化,ostringstream默认的情况下都是使用右对齐方式,因而小伙伴们比较少使用左对齐方式,但ostringstream也可以有明式的指定左对齐或右对齐进行格式化字符串,如下 代码片. // An highlighted block #include <string> ...

章鱼之家 1983

压电传感器信号放大难题?用运放设计电荷放大器的5个关键步骤

本文详细解析了压电传感器信号放大难题,并提供了用运放设计电荷放大器的5个关键步骤。从电压放大到电荷放大的范式转换,到运放选型、反馈网络设计、PCB布局及频响特性验证,帮助工程师解决工业自动化中的信号衰减问题,提升测量精度和稳定性。

weixin_27303545的博客 449

C++对齐输出(左对齐和右对齐)

符号也算一个宽度。并且,如果输出长度超过规定的宽度,则不会受宽度限制

java领域博主 4万+

Latex下使用JabRef添加参考文献

文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结 前言 Latex可以手动添加参考文献,但文献过多时,使用JabRef软件相对方便。 提示:以下是本篇文章正文内容,下面案例可供参考 一、JabRef安装 网址:http://www.jabref.org 打开网址后,点击“Download” 进入如下页面后,选择 portable (便携版,无需安装),下载后是一压缩包,打开即可使用。 二、使用 1.创建库 ...

sz3076799的博客 3467

2022年电赛E题声源定位跟踪系统

电赛声源定位

qq_53357019的博客 2万+

C++字符串格式化 sprintf、printf 指定输出格式 位数 左右对齐

C++字符串格式化 sprintf、printf 指定输出格式 位数 左右对齐 符号 说明 %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %0 无符号以八进制表示的整数 %g ...

snowwind_51的博客 1万+

神州数码OSPF实战配置详解(手把手教学)

本文提供神州数码设备上OSPF基础配置的详细实战教程。通过搭建典型的两台三层交换机互联实验环境,手把手演示了VLAN创建、接口IP配置、OSPF进程启动、Router-ID设置及网络宣告等核心步骤,并分享了邻居状态验证、路由检查及常见排错方法,帮助网络工程师快速掌握神州数码OSPF的配置要点与操作技巧。

weixin_29210727的博客 79

string和stringstream+setw()用法总结

一、string string 是 C++ 提供的字串型態,和 C 的字串相比,除了有不限长度的优点外,还有其他许多方便的功能。要使用 string, 必須先加入这一行: #include 接下來要宣告一个字串变量,可以写成: string s; 我们也可以在宣告的同时让它设成某个字串: string s="TCGS"; 而要取得其中某一個字元,和传统C 的字串

java后端程序猿日常总结 6166

用Python爬取公众号历史所有文章,看这篇就够了

手把手教你爬取公众号历史所有文章

u010522887的专栏 1万+

AUTOSAR OS详细介绍及配置说明(更新版20240115)

AUTOSAR OS扩展了OSEK/VDX标准中的操作系统,所以本文结合OSEK/VDX的标准来介绍AUTOSAR OS,并借助Vector Configurator讲解AUTOSAR OS的配置。源于德语,英文意思是:“车载电子设备的开发系统和接口”,它是一个标准,用来产生嵌入式操作系统的规范,通讯协议栈,和汽车网络管理协议,也产生其他相关的规范。OSEK被设计来提供整车的各种电子控制单元的软件标准架构。

酒无忧的博客 1422

青少年编程与数学 01-006 设计网页的外观 09课题、文本

本文介绍文本相关属性的设置。

明月看潮生的博客 1321

从DDPM到DDIM:深入解读《Denoising Diffusion Implicit Models》

DDIM发表在ICRL2021上,是DDPM重要的改进之一,能显著提高DDPM的样本质量、减少采样时间,并且能显式控制插值,已经被广泛应用到现在的Diffusion Models上。这篇博客和大家一起详细解读一下DDIM,认识这一伟大的模型。.........

沉迷单车的追风少年 1万+

关于VSCODE上markdown嵌入KaTex公式的对齐问题

最近为了完成推理证明的作业,使用markdown插入数学公式 使用了VSCODE上的Markdown Preview Enhanced插件 该插件是利用KaTex的,语法跟LaTex存在很大差异 由于我要写的是关于命题逻辑的证明问题,需要对多行的公式同一行部分左对齐部分右对齐 形如这样子 但搜索了半天都没有找到KaTex如何对齐 只有其中的\tag标签能够右对齐 又有用两个$$嵌入的公式是居中 一个$嵌入的公式是左对齐的 而\tag标签又只能嵌入两个$$中 经过尝试,找到了这样一种写法 这样就可以实现一行

chenchild的博客 1197

Spring AI 实战:如何使用 MCP Server 搭建 MCP 天气查询服务

MCP(Model Context Protocol)是 Anthropic 提出的一种开放协议,它定义了AI 模型与外部世界交互的标准方式。通俗地说:大模型本身只拥有训练数据中的知识,它不知道今天的天气、无法查询你的数据库、不能调用你的内部 API。MCP 就是解决这个问题的"桥梁"——它让模型能够发现并使用外部工具(Tools),就像人用手去操作工具一样。角色职责对应依赖MCP Server暴露工具(Tool),供模型调用MCP Client连接 Server,让模型发现和使用工具本文我们先聚焦。

SmartSi 760

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

php元素水平对齐,0816-css3-盒子模型、元素对齐、定位

实例html>作业0816作业1:编程实现盒模型的基本要素:内容,内外边距与边框,并背诵padding与margin的简写规则;内容content边框border内边距padding(padding-top/padding-right/padding-bottom/padding-left)上中下左一样,如padding:10px;上下一样及左右也一样,如padding:10p...

weixin_42517317的博客 160

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

网页前端设计-作业二(CSS)

1 .普通(4分)元素可以向哪些方向进行浮动?如何清除浮动效果?在CSS中float属性可以用于令元素向左或向右浮动。常用clear:both来清除之前元素的浮动效果。2 .普通(4分)CSS背景图像的平铺方式有哪几种?repeat-x(水平方向平铺),repeat-y(垂直方向平铺),repeat(水平和垂直方向都平铺)以及no-repeat(不平铺,只显示原图)。3 .普通(4分)CSS样式表有哪几种类型?它们的层叠优先级关系是?外部样式表、内部样式表和内联样式表。优先级

qq_61727355的博客 1927

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

wed前端的第三次作业

以上部分图片来源网上,如有侵权,提醒删除。

huatangqiu的博客 769

品优购项目06课后作业--产品详情页,text-align:justify属性无效,

【代码】品优购项目06课后作业--产品详情页,text-align:justify属性无效,

qq_46617150的博客 977

语音对齐不求人:Qwen3-ForcedAligner零基础使用指南

本文介绍了如何在星图GPU平台上自动化部署Qwen3-ForcedAligner-0.6B镜像,实现高精度语音与文本的强制对齐。用户上传音频和对应文字后,30秒内即可获得毫秒级词级时间戳,广泛应用于字幕制作、有声书编辑、歌词同步及语言教学分析等场景。

weixin_28949937的博客 369

石大在线计算机基础作业二,石大网教计算机用基础第二阶段在线作业.doc

石大网教计算机用基础第二阶段在线作业第二阶段在线作业单选题 (共30道题)收起?? A、将文档中被选择的内容复制到当前插入点?? B、将文档中被选择的内容移到剪贴板?? C、将剪贴板中的内容移到当前插入点?? D、将剪贴板中的内容复制到当前插入点我的答案:D??此题得分:2.5分?? A、缩进?? B、间距?? C、对齐?? D、行距我的答案:B??此题得分:2.5分?? A、字的大小一样,字体不...

weixin_35891142的博客 122

latex缩进与对齐_latex 换行后缩进

且每个条目输 入完毕之后不需要做任何的强迫换行记号,如:\\\\ (换行符)或者 \\par(分段符) Latex可以自动处理四重enumerate嵌套,编号规 则为第一级自然数,第二级......那么, 如何让空格在本行行尾自动换行?有两种方法可以实现: 方法一: 选中文字, 然后点击格式——段落——缩进和间距, 在常 规栏中,选择对齐方式为“左对齐” ......且每个条目输 入完毕之后不需要...

weixin_26841743的博客 1万+

Lychee Rerank MM效果展示:教育场景中手写习题图+题干文本的高精度匹配

本文介绍了如何在星图GPU平台自动化部署Lychee Rerank多模态智能重排序系统,实现教育场景中手写习题图片与题干文本的高精度匹配。该系统基于Qwen2.5-VL多模态模型,能深度解析图文混合内容,适用于智能作业批改、个性化学习资源推荐等教育应用,显著提升匹配准确性和教学效率。

weixin_36231030的博客 212

计算机应用基础第2次平时作业,2012年春计算机应用基础第2次平时作业.doc

2012年春计算机应用基础第2次平时作业.doc2012年春计算机应用基础第2次平时作业一.填空题16.在Word2007中,用快捷键关闭Word文档的最快方法是 CTRL+W? 。17. 在Word2007中新建文档的快捷键是 CTRL+N 。18. 在Word2007中,默认保存文档文件的扩展名是 DOCX 。19.在Wor...

weixin_39767121的博客 216

高效精准的文本校对利器:在线文本比较工具

在线文本比较工具是一款基于Web的应用程序,它采用先进的差异比对(Diff)算法,能够智能地分析并高亮显示两段文本内容之间的所有增、删、改差异。它通过直观的视觉呈现,让用户一目了然地看到文本的变化,极大地提升了校对、合并和审核工作的效率与准确性。无论是专业开发者还是文字工作者,一款可靠的在线文本比较工具都是提升工作效率、保证工作质量的“刚需”。川芎网络提供的这款工具,以其精准的比对能力、强大的合并功能和便捷的操作体验,成为了文本校对领域的得力助手。

zichenblog的博客 699

11.13作业+笔记

11.13周一作业

UseLessQQ的博客 172
上一篇: 部分优化总结
下一篇: 关于帧同步系统(一)
Eugen009
博客等级 码龄6年 28粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值