A4611 | 休息日
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
小明在 $A$ 公司上班,假设一个月有 $n$ 天,其中最后一天,也就是第 $n$ 天是法定休息日。在第一个月的第 $n$ 天后面紧跟着下一个月的第 $1$ 天,以此类推。$A$ 公司非常良心,想要给员工每月再安排两个节假日,现在想让你在每个月再安排两天(安排的时候不能有连续两天同时休假),使得相邻的假期之间隔的天数分别为 $d_1, d_2, d_3$,请求出 $min(\vert d_1 - d_2 \vert, \vert d_2 - d_3|, \vert d_3 - d_1 \vert)$的最大值。
$\large{数据范围}$
$10 \leq n \leq 10^9$
$\large{数据范围}$
$10 \leq n \leq 10^9$
输入格式
输入一个整数 $n$ 表示每一个月的天数。
输出格式
输出一个整数占一行,表示答案。
输入输出样例
输入 #1
10
输出 #1
1
对于样例,你可以放在每月的第 $3$ 天, 第 $5$ 天,那么$d_1 = 2, d_2 = 1, d_3 = 4$, 所以得到的结果是 $min(\vert 2 - 1 \vert, \vert 1 - 4 \vert, \vert 4 - 2 \vert) = 1$。可以证明 $1$ 是最大值,你找不到比这种方案更优解法。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?