梦熊 NOIP 13连测 #13

news/2024/10/24 19:04:51

赛时 100+75+30+0

A.

求对于区间 \([l, r]\) 的答案,转换成 $ans(R) - ans(L - 1) \(,\)ans(i)$ 表示小于等于 \(i\) 的元素个数。

对于 \(x\),二分小于等于 \(x\) 的个数,可以直接对于二分的这个数 q 次操作判断,因为如果它可以小于它的一定也可以。时间复杂度 \(O(Q\log n)\)

B.

75pts

设当前的中间的数为 \(now\),枚举左端点,向右枚举每次相当于插入两个数,如果两个数都大于 \(now\),那 \(now\) 变为小于它的第一个数,若两个数都小于 \(now\),那 \(now\) 变成大于它的第一个数,否则就不变,依次更新答案即可,时间复杂度 \(O(n^2 \log n)\)

100pts

枚举中位数,令小于它的数为-1,大于它的数为1,向左向右枚举分别做前缀/后缀和,一个区间满足当且仅当这个区间的和为0,记录一下统计答案即可。

#include<bits/stdc++.h>
#define int long long
using namespace std;const int N = 1e6 + 7;
int p[N], a[N], f[N], sum1[N], sum2[N];
int sm[N];
int mp[N];
signed main() {freopen("book.in", "r", stdin);freopen("book.out", "w", stdout);int n;cin >> n;for(int i = 1; i <= n; i ++) {cin >> a[i];a[p[i]] = i;}int ans = 0;for(int i = 1; i <= n; i ++) {for(int j = 1; j <= n * 2; j ++) mp[j] = 0;int now = 0;sm[a[i]] = 0;for(int j = a[i] - 1; j >= 1; j --) {if(p[j] < i) sm[j] = sm[j + 1] - 1;else sm[j] = sm[j + 1] + 1;}for(int j = a[i] + 1; j <= n; j ++) {if(p[j] < i) sm[j] = sm[j - 1] - 1;else sm[j] = sm[j - 1] + 1;}for(int j = 1; j <= a[i]; j ++) mp[n + sm[j]] += j;for(int j = a[i]; j <= n; j ++) ans += j * i * mp[n - sm[j]];}cout << ans << endl;
}

C.

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

RTE 2024 隐藏攻略

大家好!想必今年 RTE 大会议程大家都了解得差不多了,这将是一场实时互动和多模态 AI builder 的年度大聚会。大会开始前,我们邀请了参与大会策划的 RTE 开发者社区和超音速计划的成员们,分享了不同活动的亮点和隐藏攻略。请收藏好,开启你的 RTE 2024 之旅吧! 大会基本信息…

帝国CMS忘记后台登录认证码处理方法

查看配置文件:打开 e/class/config.php 文件(对于帝国CMS 7.5,路径为 e/config/config.php)。 查找 $ecms_config[esafe][loginauth] 变量的内容。忘记后台登录安全答案登录数据库:使用数据库管理工具(如phpMyAdmin)登录到你的数据库。找到用户附加表:寻找名为 phome_e…

忘记帝国CMS后台密码的解决方法

使用phpMyAdmin重置密码登录phpMyAdmin打开浏览器,输入phpMyAdmin的访问地址,通常为 http://yourdomain.com/phpmyadmin。 使用数据库管理账号登录。选择数据库在左侧的数据库列表中,找到并点击包含 phome_enewsuser 表的数据库。修改用户表点击 phome_enewsuser 表。编辑用…

苹果CMS v10 忘记管理员密码的重置方法

如果你忘记了苹果CMS v10的后台管理密码,可以通过以下步骤进行重置:备份数据库:在进行任何数据库操作之前,请确保备份当前的数据库,以防止数据丢失。登录数据库:使用数据库管理工具(如phpMyAdmin)登录到你的数据库。如果你使用的是宝塔面板,可以通过宝塔面板的数据库管…

码上狂欢 | 1024程序员节,免费领取你的技能加油包!

​祝程序员们节日快乐! 今天是10月24日,一个特别的日子——程序员节。在这个节日,我们聊聊程序员比较热门的职业发展方向。 对于有理工科背景的程序员来说,有两个方向是非常有发展前景的。所谓前景,就是岗位多、薪资高、未来前途广阔,适合作为长远职业规划的方向。这两个…

DedeCMS后台管理员密码忘记的解决方法

如果你忘记了DedeCMS的后台管理密码,可以通过以下步骤进行重置:备份数据库:在进行任何数据库操作之前,请确保备份当前的数据库,以防止数据丢失。登录数据库:使用数据库管理工具(如phpMyAdmin)登录到你的数据库。找到用户表:寻找名为 dede_admin 的表,这是存储管理员账…

firewall-cmd - 防火墙规则管理工具

firewall-cmd - 防火墙规则管理工具 原创 点击关注-> 奶嘴很忙2024年09月13日 06:01 广东1、简介 firewall-cmd 是一个用于管理防火墙规则的命令行工具。它是 firewalld 服务的主要命令行接口,用于配置和控制防火墙规则。firewall-cmd 允许系统管理员动态地添加、删除和修改…

Robust Loop Closure by Textual Cues in Challenging Environments

arxiv | 南洋理工大学开源 基于文本线索实现复杂环境中的鲁棒闭环检测 【Robust Loop Closure by Textual Cues in Challenging Environments】 文章链接:[2410.15869] Robust Loop Closure by Textual Cues i... 开源仓库:GitHub - TongxingJin/TXTLCD: This repository is…