打卡信奥刷题(397)用Scratch图形化工具信奥P8551[普及组/提高组] Bassline

Bassline

题目背景

fuwa↑ fuwa↑ fuwa↑ fuwa↑

赫尔德开始使用当下热潮的聊天软件 BassLine,那么第一步自然是加好友了!加好友既需要确认自己和对方有共同兴趣,又需要能加到足够多的好友。赫尔德将其抽象成了下面这个问题,让你来帮她解决。

题目描述

本题中,区间 [l,r][l,r][l,r] 指所有大于等于 lll 且小于等于 rrr 的整数组成的集合,如 [3,3][3,3][3,3] 代表 {3}\{3\}{3}[3,7][3,7][3,7] 代表 {3,4,5,6,7}\{3,4,5,6,7\}{3,4,5,6,7}

给定 nnn 个区间,第 iii 个区间是 [li,ri][l_i,r_i][li,ri]

你需要选择两个整数 x≤yx\le yxy,满足:

  • 对于所有区间 [li,ri][l_i,r_i][li,ri]1≤i≤n1\le i \le n1in),以下两个条件之一满足:
    1. [x,y][x,y][x,y][li,ri][l_i,r_i][li,ri] 包含,换言之, [x,y]∩[li,ri]=[x,y][x,y]\cap[l_i,r_i]=[x,y][x,y][li,ri]=[x,y]
    2. [x,y][x,y][x,y][li,ri][l_i,r_i][li,ri] 无交集,换言之,[x,y]∩[li,ri]=∅[x,y]\cap[l_i,r_i]=\varnothing[x,y][li,ri]=

若有 kkk 个区间满足条件 1,则你的得分是 k(y−x)k(y-x)k(yx)。输出你最大的可能的得分。

输入格式

第一行一个正整数表示 nnn

接下来 nnn 行,每行两个数 li,ril_i,r_ili,ri,描述一个区间。

输出格式

一行一个自然数表示答案。

样例 #1

样例输入 #1

4
1 3
4 7
5 9
7 10

样例输出 #1

2

提示

【样例解释】

对于样例,[5,6][5,6][5,6] 是最优的区间之一,其含于 [4,7],[5,9][4,7],[5,9][4,7],[5,9],且与 [1,3],[7,10][1,3],[7,10][1,3],[7,10] 没有交集。此时 k=2k=2k=2,因此答案为 2×(6−5)=22\times(6-5)=22×(65)=2[1,3][1,3][1,3] 也是一个最优的区间。

[5,7][5,7][5,7] 并非合法的区间,因为它与 [7,10][7,10][7,10] 有交集,也并不含于 [7,10][7,10][7,10]


【数据范围】

对于所有数据保证 1≤n≤3×1051 \le n \le 3 \times {10}^51n3×1051≤li≤ri≤3×1051 \le l_i \le r_i \le 3 \times {10}^51liri3×105

  • 子任务 1(20 分):n,li,ri≤10n,l_i,r_i \le 10n,li,ri10
  • 子任务 2(20 分):n≤103n \le {10}^3n103
  • 子任务 3(20 分):li,ri≤103l_i, r_i \le {10}^3li,ri103
  • 子任务 4(40 分):无特殊限制。

Scratch实现

在这里插入图片描述

后续

接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值