普通视图

发现新文章,点击刷新页面。
昨天以前Ayx 博客

此博客的所有镜像

2023年5月25日 08:00

Cloudflare Pages: https://e.imayx.top/

似乎在网络条件合适的情况下访问体验比较好?

GitHub Pages: https://g.imayx.top/

有时候证书会抽风,自身支持 IPv6,因此关闭 Cloudflare Proxy 不影响纯 IPv6 用户访问

Vercel: https://imayx.top/

综合考量下目前的主站,不支持 IPv6,但通过 Cloudflare Proxy 可支持 IPv6 访问

Netlify: https://n.imayx.top/

感觉不是很稳定。。

免费获取在 Microsoft Store 中收费 ¥7.00 的 HEVC 视频扩展

2022年11月27日 21:38

原来直接从微软商店下载的方法已经失效了,我在这里分享一个离线安装包:来自设备制造商的 HEVC 视频扩展.zip - 蓝奏云

一般下载 x64 的直接打开安装就行了。

image

以下内容已失效


点击下面的链接即可调起 Microsoft Store 并打开「来自设备制造商的 HEVC 视频扩展」页面,直接点击安装即可。个人认为它的功能和收费 7 元人民币的「HEVC 视频扩展」相同,甚至近似大小也一样(都是 7.0 MB)。

ms-windows-store://pdp/?ProductId=9N4WGH0Z6VHQ

如果点击上面的链接没有反应,或者你现在使用的设备没有安装 Microsoft Store,可以点击下面的链接打开网页版 Microsoft Store;但是,这也不能让你把这个应用添加到你的微软账号的库中。

https://www.microsoft.com/zh-cn/p/hevc-video-extensions-from-device-manufacturer/9n4wgh0z6vhq

这篇文章在知乎上的链接:https://zhuanlan.zhihu.com/p/492933007

链接

2022年6月30日 08:00

你知道吗?

大屏访客点击右边的目录即可直接跳转到对应站点

个人博客

关于晚晚秋的一切——

晚秋秋~

一条鱼 的博客

洛谷@我和鱼过不去

她 AK 了 IOI !

在 IOI 中获得满分,俗称 AKIOI

Rosyr 的博客园

Rosyr 用来记录学习轨迹的地方

Avatar | 洛谷@syr050301 | bilibili@-Rosyr-

TA AFO 了。

组织/项目

萌狸科技

本站隶属于萌狸科技。

淀粉月刊

接力曾经的《少年电脑世界》!简介/我们的故事

中文独立博客

如果你想找到更多像本站一样拥有自己的域名且相对自由的博客站点的话…

萌国ICP备案

本站仅在此处进行过ICP备案,备案号为20213003

提问的智慧

简体中文版

很有幸参与了一些贡献,虽然第一次发 Pull Request 没意识到 patch-1 分支里的后续 commit 也会被同步到 pr 里被骂了

A Dark Room

小黑屋,一款被移植到网页上的文字游戏,挺有趣的。

支持以一串 Base64 编码后的 json 进行存档导入/导出。

如果 Vercel 在你所在的地区或使用的线路访问缓慢,试试 GitHub Pages: https://g.imayx.top/ADarkRoom/

mergemp4

利用 FFmpeg 在现代浏览器中合并 .mp4 格式的视频和音频,原作者为 maple3142

目前似乎不可用。肯定不是被我搞坏的!

GitHub 存储库

申请交换友链

  • 为了减少本站(现在不太可能会,但仍有可能)更换域名带来的不便,本站的链接请使用 https://ayx03.github.io/ 而不是 https://imayx.top/

  • 发在评论区与邮箱(aynxul03@gmail.com)的申请(格式不限)我都会在看到后尽快回复。

本站域名更换记录

  • aynxu.l03.me 于2021年12月19日过期。本站域名更换为 ayx.moefox.tech
  • ayx.moefox.tech 于 2022 年 7 月 25 日过期。本站域名更换为 imayx.top

后记

右边的目录似乎出现了一些问题… 已解决(临时降级到 hugo-theme-stack v3.7.0) 已彻底解决(Stack 主题修复了这一问题(#459

其实又出了一些问题,但是我假装没看见,然后现在解决了(#631

更新记录

1
2
2021-07-23 ??:??:??
2022-02-12 23:48:00

LG V50 ThinQ 韩版 LGU+ 从解锁 BootLoader 到破解 VoLTE / NSA 5G、从刷入第三方 Recovery 到硬格、从混刷到黑砖全教程

2022年4月8日 08:00
Featured image of post LG V50 ThinQ 韩版 LGU+ 从解锁 BootLoader 到破解 VoLTE / NSA 5G、从刷入第三方 Recovery 到硬格、从混刷到黑砖全教程

前言

如果您的手机正处在无限重启(Bootloop)的状态,请看这一节(点击跳转)来了解解决方案。

如果您使用的是其他型号或版本的手机(甚至可以不是 LG 的手机),本教程也可能部分(但不太可能完全)适用于您。

本教程旨在整合其他资源和教程以节省韩版 LGU+ 的 LG V50 ThinQ 用户的时间,因此如果您的机器版本或型号不同,它可能浪费您的时间,甚至对您的设备造成不可挽回的损坏。

无论如何,请谨慎操作,尤其是在 Download 和 9008 模式下进行操作时一定要三思而后行,选用可靠的数据线,保持耐心,因为它们造成的损坏很可能无法通过简单地在软件层面进行操作来恢复。

拆箱收货

笔者建议您签收贵重物品前先与快递员当面验货,或在快递柜旁拆开,以避免不必要的纠纷。

不过,笔者自己从来不这么做。

如果卖家声称您购买的机器有以下特性,您可以用下文所述的方法验证他们的描述是否属实。

气密性

(该部分适用于其他出厂时支持 IP68 防水且有气压传感器的设备)

普遍的检测方法是使用 DevCheck 显示气压传感器的数值(其实系统自检中也可以查看压力传感器的数值,但是我更喜欢使用 DevCehck)

DevCheck 的包名:flar2.devcheck

蓝奏云下载:https://cpk.lanzoui.com/iZdritwxo8b

  • 打开传感器中的压力传感器

  • 堵住右下角扬声器左侧的小孔(对于 LG G8 ThinQ,这个小孔在左上角;别问我为什么知道,因为我也用过)

  • 用力按压屏幕后松开(小心别把屏幕压碎了,适可而止;别问我为什么要提一嘴,因为我压碎过)。

  • 如果气压值的波动大于 10 hPa,那么这台手机很可能有气密性,可以下水。

气密性好的组装机波动甚至能达到 40 hPa,因此是否有气密性不应作为判断手机是否原装的标准。

但是请注意,不要将手机置于热水或蒸汽中。防水功能防水溅不防手贱,不建议经常性主动下水,也不要跟我一样想出水下跑分或者半浸没充电这种操作。

完美屏

一般指显示和触摸功能完美(没有彩点、黑块或绿线黑线),全原装非后压屏的机器外屏没有任何划痕的应该很少。

获取 IMEI 并记录,查询手机版本

得到 IMEI 的几种方法:

  • 正常进入系统时,打开拨号键盘输入 *#06#

  • 正常开机进系统后在 设置-关于手机 中查看;

  • 关机后长按开机键、音量上下键,同时按住。

  • 查看手机背面的标签、包装盒上的标签(二手机可能没有);

记录好 IMEI 后可以在这里使用它查询来获得关于这台手机很多有用的信息,包括但不限于运营商(简称)、国家、区域、CPU 类型、手机型号、颜色、S/N 码、CSN 码、生产与出厂日期,但 KDZ 相关的四项信息似乎总是空白或没有。

查询手机的型号和版本就是为了下载对应版本的 KDZ(类似于其他安卓手机的线刷包,不懂也不用慌),避免浪费时间。

http://www.lgbbs.com/lg_mobile-lg_mobile.html

(这个地址似乎暂时无法访问了)

升级 Magisk 版本

此部分适用于收到时卖家已帮您刷好旧版 Magisk 的机器。

旧版 Magisk 除了用于授予应用 Root 权限外能刷入的模块非常有限,因此我们需要升级 Magisk 版本。

推荐先升级 Magisk Manager(新版去掉了 Manager 的后缀),再升级 Magisk 本体。

但是,先别急着使用直接安装升级 Magisk,这很可能导致您的设备陷入 BootLoop(无限重启)的状态中(如果您甚至无聊到启用了安全启动),而且您还有可能完全不知道怎么让它停下来。

正确的做法应该是把新版 Magisk 的 .apk 文件扩展名改为 .zip,然后以安装模块的方式在 Manager 中刷入。

破解 VoLTE

我还没成功…

破解 5G

卖家已经帮你破解好了 VoLTE,移动卡电信卡都能边打电话边上网了(如果没有破解 VoLTE,电信卡无法正常使用),但你还听说这是一台 5G 手机?

其实,它似乎只支持联通与电信的 5G 频段。并且它只支持 NSA(非独立组网模式)而不支持 SA(独立组网模式)。

我没有开通 5G 套餐,也没有换新的 USIM 卡,可以用 5G 吗?

不存在只支持 4G 而不支持 5G 的 UIM 卡,并且未开通 5G 套餐也可以连接 5G 网络,只不过速度会被限制在 300 Mbps。开通 5G 套餐后可享受 500 Mbps 或 1 Gbps 甚至高达 4 Gbps 的速率。

能不能成功,一试便知。

下载 QPST TOOL 并安装,同意许可协议一路 Next 最后 Finish 即可。LG 驱动同理。

https://cpk.lanzoui.com/i0cvUtwz3qf

https://cpk.lanzoui.com/i8Edvtwz7be

替换用文件,记得去掉 .txt 的后缀,笔者加上此后缀是因为蓝奏云不支持上传 .xml 格式的文件。

https://cpk.lanzoui.com/iDTmPtwza4f

电脑下载文件的同时,手机上也可以操作起来了。

  • 打开拨号键盘,输入 *#546368#*500#

  • 进入 HiddenMenu(隐藏菜单)

  • SVC Menu - LDB - USB debugging 打钩

  • SVC Menu - Port Check Test 选择 Enabled

  • 设置 - 系统 - 关于手机 - 软件信息 - 内部版本号 - 连续点击7次 - 您现在是开发人员!

  • 设置 - 系统 - 开发人员选项 - 开启 - 启动 OEM解锁 - 启用

  • 设置 - 系统 - 开发人员选项 - 开启 - USB调试 - 确定

  • USB 线连接 PC 下拉菜单更改 USB 选项 选择 仅充电 USB 调试授权 同意

  • 设置 - 网络和互联网 - 绑定 - 开启 - USB绑定

如果你的桌面上有「LG 网络」这个 App,可以直接用它进入 Hidden Menu 和 Field Test 等隐藏菜单,无需繁琐地在拨号键盘中输入代码。

「绑定」实际上是网络共享的意思,官方系统的中文翻译很有问题。(甚至比机器翻译还烂)

好的,现在我们打开 QPST Configuration,点击右下角的 Add New Port 按钮。

如果你的手机已经以正确的姿势连接到了电脑,那么应该有一个端口后面显示 (LGE Mobile USB Serial Port)。选中它,OK。

然后在菜单栏的 Start Client 中选择第一项 EFS Explorer,选择刚刚添加的端口,OK。

成功连接并打开类似文件资源管理器的界面后,在左侧找到 policyman 文件夹,选中其中的所有文件(包括子目录 persisted_items),右键选择 Delete 或者按键盘上的 DEL 键删除。(建议备份一份,但这个 Explorer 似乎只支持每次传输一个文件到电脑)

然后把刚才下载的 carrier_policy.xml(记得去掉 .txt 后缀)拖进去(或者右键空白处选择 Copy Data File from PC)

重启手机,大功告成。

如果重启完移动数据的图标还是 4G 或者 LTE 也不用灰心,在拨号键盘中输入 5457#*510# 进入 Service Menu,选择第一项 Debug Screen,如果 NR5G Link 冒号后面的数字为 1,那么恭喜你破解成功了,只是你所在的区域暂时没有 NSA 5G 覆盖或者已经退网了。

如果破解 5G 后在拨号键盘输入 5457#*510# 没有反应,在 *#*#4636#*#* 中查看也是可以的。

以上内容修改自:LG V50S 开5G教程 LG V50适用-855板块-LG社区

使用 LG UP 来更换系统版本

安装并破解好 LG UP,同时下载好对应版本的 .kdz 线刷包文件。

将手机关机后在插入数据线的同时按住音量加来进入 Download 模式,数据线另一头需要事先连接到电脑。

线刷时请选择可靠的数据线,过程中一定要耐心等待,千万不要在进度条跑完手机端自动重启前断开数据线。

打开 LG UP 并拖入 KDZ 即可开始刷机。

保持默认模式(第一个),不会造成 BootLoader 被自动回锁。

一般两三分钟即可完成,完成后手机会自动重启。

韩版的 KDZ 中一般包含很多无用的 App,能卸载的开机后建议尽快卸载,嫌麻烦也可以刷完先硬格一次以清除所有预装应用,具体方法在下方。

(该章节尚未完成)

意外与失败的处理

对于 Bootloop(无限重启),首先尝试硬格。

同时按住电源键和音量下键 8 秒左右,当第一屏(即显示手机型号的画面)亮起时松开,3 秒后再次按住电源键,即可进入硬格菜单。

用音量减切换到 Yes,用电源键确认,Erase(擦除)很快。数据飞灰烟灭。

此操作在刷入 TWRP 后不会擦除手机,而是会进入 Recovery,且通过此方式进入一般触屏功能可以使用。

LG UP 线刷救砖

只要你还能进入 Download 模式,就能使用 LG UP 刷入官方 KDZ 来进行线刷救砖,无需冒险使用 9008 进行救砖。

详见「使用 LG UP 来更换系统版本」一节。

鸣谢

对本文启发很大的

LG 855系列-快速黑砖手册 愿你刷机半生,归来仍是黑砖

在 Hugo 主题 Stack 中轻松配置 Waline 评论系统

2021年10月4日 08:00

你以前也许听说过或用过 Valine。Waline 与它差不多,但管理功能集成在内,并可以更方便地部署。

如果你使用其他没有 Waline 支持的 Hugo 主题或其他博客系统,按本文部署后可以参考官方文档来引入客户端

在 LeanCloud 上部署数据库

注册 LeanCloud 国际版并进入控制台

如果您决定使用 LeanCloud 国内版,您需要为您创建的应用额外绑定已备案的域名。

创建开发版新应用(随意命名)并复制设置 - 应用凭证中的前三项值,稍后会添加在 Vercel 中的环境变量里。

在 Vercel 上部署服务端

(推荐)使用 GitHub 登录,创建存储库(可以是私有 Repo),跳过创建团队(反正这也不是什么需要团队协作的项目),部署。

两分钟左右部署就会完成。

完成部署后在 Settings 中找到 Environment Variables,分别添加三个环境变量 LEAN_IDLEAN_KEYLEAN_MASTER_KEYVALUE 分别填写在 LeanCloud 中获得的 APP IDAPP KEY、和 Master Key

记得注册你的管理员账号,以免被访客注册。第一个注册的用户会得到管理权限。

在配置文件中配置客户端

最后打开站点根目录下的 config.yaml,在 params 下添加以下几行:(如果你当初拷贝了 Stack 提供的 config.yaml 文件,那么这段在第 60 行左右,只需填入 serverURL 即可)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
 # Waline client configuration see: https://waline.js.org/en/reference/client.html
 waline:
 serverURL: https://<PUT_YOUR_OWN_HERE>.vercel.app/
 lang: zh-CN
 visitor: true
 avatar:
 emoji:
 - https://cdn.jsdelivr.net/gh/walinejs/emojis/qq
 requiredMeta:
 - name
 - email
 - url
 placeholder:
 locale:
 admin: Admin

记得替换 serverURL 为你自己部署的 Vercel App 地址,在这里查阅各项参数的含义。

快速上手 | Waline

然后可以使用 hugo server 看下效果,使用 Waline 时不会像 disqus 一样在本地预览时屏蔽评论。

Emoji

你可以为你的 Waline 客户端添加多套表情。

题外话,严格来说,这些表情似乎不能称作 emoji。真正的 emoji 必须能被编码,而不是一张图片。

Waline 提供了一系列开箱即用的表情预设。你可以直接将它们添加到 emoji 选项中:

Alus

https://cdn.jsdelivr.net/gh/walinejs/emojis@1.0.0/alus

哔哩哔哩

https://cdn.jsdelivr.net/gh/walinejs/emojis@1.0.0/bilibili

QQ

https://cdn.jsdelivr.net/gh/walinejs/emojis@1.0.0/qq

贴吧

https://cdn.jsdelivr.net/gh/walinejs/emojis@1.0.0/tieba

Twitter Emoji

https://cdn.jsdelivr.net/gh/walinejs/emojis@1.0.0/tw-emoji

微博

https://cdn.jsdelivr.net/gh/walinejs/emojis@1.0.0/weibo

本站的配置

例如本站目前的 Waline 部分配置如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
 # Waline client configuration see: https://waline.js.org/en/reference/client.html
 waline:
 serverURL: https://c.imayx.top/
 lang: zh-CN
 visitor: false
 avatar:
 emoji:
 - https://cdn.jsdelivr.net/gh/walinejs/emojis@1.0.0/tieba
 - https://cdn.jsdelivr.net/gh/walinejs/emojis/qq
 - https://cdn.jsdelivr.net/gh/walinejs/emojis@1.0.0/alus
 requiredMeta:
 - name
 - email
 - url
 placeholder:
 locale:
 admin: 博主

B站和微博的表情看多了会让我生理性不适,因此没有添加进本站的客户端中。

评论管理

评论管理 (管理端)

部署完成后,请访问 <serverURL>/ui/register 进行注册。首个注册的人会被设定成管理员。

管理员登陆后,即可看到评论管理界面。在这里可以修改、标记或删除评论。

用户也通过评论框注册账号,登陆后会跳转到自己的档案页。

编辑记录

1
2021-10-19 23:21:00

出现 error: ld returned 1 exit status 的五种原因以及解决方法

2021年8月22日 08:00
Featured image of post 出现 error: ld returned 1 exit status 的五种原因以及解决方法

这个错误让人懵圈的地方就在于它不会给出错误出现的位置,让已经写了几百行的你痛不欲生。

可执行文件被占用了

因此编译器无法覆盖旧的可执行文件,所以编译失败。

这很有可能是你没发现它还没结束运行。

(我目前在用的 IDE:Visual Studio Code

扩展:C/C++ Compile Run(可以方便地编译单个 cpp 文件,且不会因为路径中存在空格或中文出错。)

解决方案

Dev C++ 等 IDE 直接把弹出的窗口(黑框)关了就行了

VS Code 可以从输出切换到终端选项卡,使用快捷键 Ctrl+C 结束程序(同样适用于 external console )。

实在不行就用任务管理器和 taskkill 吧

主函数不存在(main 拼写错误)

你不太可能不写主函数,但是你很有可能把 main 打成 mian 或者什么其他奇怪的东西。

在编译器眼里,这些可不能算主函数。

解决方案

main 拼对。

所调用的函数仅进行了声明

这种情况下新版编译器仍旧会输出 error: ld returned 1 exit status 这一让人迷惑的错误。 但是一般也不会把函数体和声明分开写吧…

(函数声明在主函数上方即可,函数体是可以写在 main 函数下方的。)

解决方案

把漏写了的函数体补上。

(旧版编译器)在主函数中定义了函数

新版编译器发现你在 main 函数中定义了其它函数报错并不是error: ld returned 1 exit status

而是error: a function-definition is not allowed here before '{' token Snipaste_2021-08-22_19-30-32.png

解决方案

把子函数定义在主函数外面。

(旧版编译器)调用了不存在的函数

一般情况下应该是所需头文件未引入或者函数名键入错误。

并不确定“scanf/printf 键入错误”是不是真的会引起该错误(CSDN 上的一篇博客说的,我也懒得去装个旧版编译器实测),是不是只有 scanf 和 printf 会这样更不得而知…

总之新版编译器即使在 CSDN 博文中所谓的“代码较多的情况”下也不会因为这个原因出现这种错误,只会告诉你这个函数在这个作用域没有被定义过,甚至还会反问你:

你说的是 scanf 吗?

(测试用代码是随机跳题后从这里复制的,并未提交评测)

解决方案

检查函数名称的拼写是否正确。

如果想调用库函数但不清楚应该引入什么头文件,可以在搜索引擎上像这样搜索:

sqrt() 所在的头文件

C++ sqrt()

C语言 sqrt()

或者直接 #include <bits/stdc++.h>

本文的测试环境

1
2
3
4
g++ (MinGW-W64 x86_64-posix-seh, built by Brecht Sanders) 10.3.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

编辑记录

2021-08-22 19:20:00

MySSL 安全签章

2021年8月2日 08:00
Featured image of post MySSL 安全签章

又摸了一下午整了个这么个东西出来

要得到 A+ 评级:

您的网站必须启用 HSTS 且 max-age 属性不小于 6 个月(即 15768000 秒)

请注意:

启用 HSTS 后所有不支持 HTTPS 的子域名都将无法访问,且在 max-age 属性设置的时间内无法恢复。

要得到 ATS 合规:

您的网站必须支持 TLS v1.2。

要得到 PCI DSS 合规:

您的网站不得支持 TLS v1.0。

关闭 TLS v1.0 支持意味着放弃对一些老旧操作系统和浏览器(Android ≤ 4.3、Internet Explorer ≤ 10、Java ≤ 7u25、Safari ≤5.1.9、OS X ≤ 10.6.8)的兼容性,具体测试情况见下图。

PCI安全标准委员会规定 2018 年 6 月 30 日之后,开启 TLS1.0 将导致 PCI DSS 不合规,

具体参考:《更严格的PCI DSS合规标准》

HSTS 相关配置可以参考 MySSL.comHTTPS安全与兼容性配置指南

测试工具:HTTP Strict Transport Security Header Testing Tool

题解 UPC-1488 客户调查(client)

2021年7月13日 08:00

题目描述:

时间:1s 空间:32M

公司派你去和几位客户面谈,以了解他们对公司产品的意见。你逐个打电话与客户联系,得知他们一般都很忙,不过他们还是可以为你抽出一点时间。现在的问题是有些客户的时间有冲突,你无法在一天内联系所有客户。所以你需要一个程序来帮助你安排第一天的工作,使得你能尽可能地和更多的客户进行联系。注意,客户不愿意你打乱他们的计划。如果你和某个客户约定见面,必须按时到达并且充分利用这段时间和他交谈,这样才不至于让他产生不满。你可以假设从一个客户处到另一个客户处的时间短得忽略不计。

输入格式:

输入包括了多个测试数据,每个测试数据开头是一个整数 $n(1 \le n \le 10000)$,表示客户总数。接下来n行每行包括两个正整数 $s$、$t$,分别表示该客户的空闲时间段的起始时间和终止时间。$s<t$

输出格式:

对于每个测试数据,在单独一行内输出你所能接触到的最多客户数。

样例输入:

1
2
3
4
3
1 15
2 19
15 17

样例输出:

2

约定:

(无)

提示:

(无)

代码

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/*
 Name: 7、客户调查
 Copyright: Aynxul03
 Author: Aynxul03
 Date: 2021-07-13
 Description:
 时间:1s 空间:32M
题目描述:
公司派你去和几位客户面谈,以了解他们对公司产品的意见。你逐个打电话与客户联系,
得知他们一般都很忙,不过他们还是可以为你抽出一点时间。现在的问题是有些客户的
时间有冲突,你无法在一天内联系所有客户。所以你需要一个程序来帮助你安排第一天
的工作,使得你能尽可能地和更多的客户进行联系。注意,客户不愿意你打乱他们的计
划。如果你和某个客户约定见面,必须按时到达并且充分利用这段时间和他交谈,这样
才不至于让他产生不满。你可以假设从一个客户处到另一个客户处的时间短得忽略不计。
输入格式:
输入包括了多个测试数据,每个测试数据开头是一个整数n(1<=n<=10000),表示客户总数。
接下来n行每行包括两个正整数s、t,分别表示该客户的空闲时间段的起始时间和终止时间。s<t
输出格式:
对于每个测试数据,在单独一行内输出你所能接触到的最多客户数。
*/
#include<bits/stdc++.h>
using namespace std;
int n,lt,ans;
struct sb{
 int start,end;
}client[1001];
bool cmp(sb a,sb b){return a.end<b.end;}//按结束时间升序
int main(){
 ios::sync_with_stdio(0);
 cin>>n;
 for(int i=0;i<n;i++) cin>>client[i].start>>client[i].end;
 sort(client,client+n,cmp); //排序
 for(int i=0;i<n;i++) if(client[i].start>=lt) ans++,lt=client[i].end;
 cout<<ans;
 return 0;
}

题解 P5707 【深基2.例12】上学迟到

2021年5月25日 08:00

(题面来自洛谷

题目描述

yyy 的学校要求早上 8 点前到达。学校到 yyy 的家一共有 $s$($s\le 10000$) 米,而 yyy 可以以 $v$($v<10000$) 米每分钟的速度匀速走到学校。此外在上学路上它还要额外花 10 分钟时间进行垃圾分类。请问为了避免迟到 yyy 最晚什么时候出门?输出 HH:MM 的时间格式,不足两位时补零。由于路途遥远, yyy 可能不得不提前一天出发,不过不可能提前超过一天。

输入格式

两个正整数 s,v,意思已经在题目中给定。

输出格式

hh:mm 表示最晚离开家的时间(时:分,必须输出两位,不足两位前面补0)

输入输出样例

输入 #1

100 99

输出 #1

07:48

分析

小学的匀速直线运动问题,t=s/v

但是有几个小细节

  1. 不要忘了加上10分钟

  2. 怎么输出 HH:MM 的格式?试了一下像保留小数点一样使用 C 的标准输入输出(Xchkoo 口中所说的“那套老掉牙的 cstdio”)的占位符,居然啪一下就行了

  3. 怎么处理时分进位?60 进制,因为不知道进几次所以用 while 循环实现就行了

  4. s/v 有小数点怎么办?不能四舍五入,只能向上取整,因为迟到 $0.000000000001$ 分钟也是迟到。

5.千米迢迢上学的 yyy 问题:八个小时都到不了学校怎么办?当 $h$ 自减变为 $-1$ 的时候将 $h$ 赋值为 $23$ 即可,由于不可能提前超过一天出发(某学生连续赶路 $30$ 余小时猝死)所以 if 即可

  1. h 及 m 的计算问题:我的做法是赋初值 08:00 然后往回倒减分钟数,然后进位到小时位

代码

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
#include<bits/stdc++.h>
using namespace std;
int main() {
 int s,v;
 cin>>s>>v;
 int t=ceil(1.0*s/v);
 int h=8,m=-t-10;
 while(m<=0) {
 m+=60;
 h--;
 if(h<0) h=23;
 }
 printf("%.2d:%.2d",h,m);
 return 0;
}

编辑记录

2021-08-06 18:11:00

题解 P2669 [NOIP2015 普及组] 金币

2021年5月9日 08:00

(题面来自洛谷

题目描述

国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去:当连续 $n$ 天每天收到 $n$ 枚金币后,骑士会在之后的连续 $n+1$ 天里,每天收到 $n+1$ 枚金币。

请计算在前 $k$ 天里,骑士一共获得了多少金币。

输入格式

一个正整数 $k$ ,表示发放金币的天数。

输出格式

一个正整数,即骑士收到的金币数。

输入输出样例

输入 #1

1
6

输出 #1

1
14

输入 #2

1
1000

输出 #2

1
29820

说明/提示

【输入输出样例 1 说明】

骑士第一天收到一枚金币;第二天和第三天,每天收到两枚金币;第四、五、六天,每天收到三枚金币。因此一共收到 $1+2+2+3+3+3=14$ 枚金币。

对于 $100%$ 的数据,$1\le k\le 10^4$

分析

代码

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
#include<bits/stdc++.h>
using namespace std;
int main() {
 int k, //发放金币的天数
 coin = 0, //骑士收到的金币数
 per = 1, //每天发给骑士的金币数
 remain = 1; //按此数量发放的剩余天数
 cin>>k;
 for(int i=1;i<=k;i++) {
 coin+=per; //发放金币
 if(--remain==0)
 remain=++per; //之后的 per+1 天每天发放 per+1 枚金币
 }
 cout<<coin;
 return 0;
}

编辑记录

突然发现之前放的代码压根没法通过编译…

2023-10-28 11:49:00

2021-08-06 18:10:00

❌
❌