当前位置: 首页 > news >正文

长宁苏州网站建设做推广的网站微信号

长宁苏州网站建设,做推广的网站微信号,移动互联网应用范围具有以下特点,网站建设需要写代码吗cf1557D. Ezzat and Grid 题意#xff1a; 有n行#xff0c;每行有10910^9109列#xff0c;仅仅由0和1构成 现在给你1的存在位置#xff0c;(i,l,r)表示第i行的第l列到第r列全为1 你可以删除任意一行i#xff0c;删除后#xff0c;第i-1行和第i1行为相邻 现在我们要求求…cf1557D. Ezzat and Grid 题意 有n行每行有10910^9109列仅仅由0和1构成 现在给你1的存在位置(i,l,r)表示第i行的第l列到第r列全为1 你可以删除任意一行i删除后第i-1行和第i1行为相邻 现在我们要求求最多的行数使得每个相邻两行最少有一列都是1(可以理解成上下相邻1)并输出删除了哪些行 题解 对于i行我们考虑前i-1行个是与i行满足要求的(即存在相邻1)。我们用线段树维护一个pairint,intsum sum.first表示以id为结尾所保留的最大行数 sum.secondid:表示以id为结尾的情况 因为1的出现都是连续的我们想查找与第i行满足情况的行数就在第i行出现1的区间例如[l,r],我们就查看所有[l,r]区间内的值取最大值得到sum(相当于取之前的最大值接着当前的i)。sum为与第i行满足情况且保留行数最多的某一行。查询完后要将第i行的情况插入到线段树中在区间[l,r]中插入我们的ans(ans.secondi,ans.firstsum.first1) 为了方便输出我们用一个path来实现记录路径 讲的可以不是很明白详细可以看看代码 代码 改了一个多小时终于改出来了 // Problem: D. Ezzat and Grid // Contest: Codeforces - Codeforces Round #737 (Div. 2) // URL: https://codeforces.com/contest/1557/problem/D // Memory Limit: 256 MB // Time Limit: 2500 ms // Data:2021-08-23 15:24:28 // By Jozky#include bits/stdc.h #include unordered_map #define debug(a, b) printf(%s %d\n, a, b); using namespace std; typedef long long ll; typedef unsigned long long ull; typedef pairint, int PII; clock_t startTime, endTime; //Fe~Jozky const ll INF_ll 1e18; const int INF_int 0x3f3f3f3f; void read(){}; template typename _Tp, typename... _Tps void read(_Tp x, _Tps... Ar) {x 0;char c getchar();bool flag 0;while (c 0 || c 9)flag| (c -), c getchar();while (c 0 c 9)x (x 3) (x 1) (c ^ 48), c getchar();if (flag)x -x;read(Ar...); } template typename T inline void write(T x) {if (x 0) {x ~(x - 1);putchar(-);}if (x 9)write(x / 10);putchar(x % 10 0); } void rd_test() { #ifdef LOCALstartTime clock();freopen(in.txt, r, stdin); #endif } void Time_test() { #ifdef LOCALendTime clock();printf(\nRun Time:%lfs\n, (double)(endTime - startTime) / CLOCKS_PER_SEC); #endif } const int maxn 1e6 9; vectorPII vec[maxn]; int num[maxn]; int tot 0; struct tree {int l, r;int lazy 0;PII maxx; } tr[maxn 2]; void pushup(int rt) {tr[rt].maxx max(tr[rt 1].maxx, tr[rt 1 | 1].maxx); } void solve(int rt, PII val) {tr[rt].maxx val;tr[rt].lazy 1; } void pushdown(int rt) {if (tr[rt].lazy 0)return;solve(rt 1, tr[rt].maxx);solve(rt 1 | 1, tr[rt].maxx);tr[rt].lazy 0; } void build(int rt, int l, int r) {tr[rt].l l;tr[rt].r r;tr[rt].lazy 0;tr[rt].maxx {0, -1};if (l r) {return;}int mid (l r) 1;build(rt 1, l, mid);build(rt 1 | 1, mid 1, r);pushup(rt); } void update(int rt, int l, int r, PII x) {if (tr[rt].r l || tr[rt].l r)return;if (tr[rt].l l tr[rt].r r) {solve(rt, x);return;}//if (tr[rt].lazy)pushdown(rt);int mid (tr[rt].l tr[rt].r) 1;update(rt 1, l, r, x);update(rt 1 | 1, l, r, x);pushup(rt); } PII query(int rt, int l, int r) {if (tr[rt].r l || tr[rt].l r)return {0, -1};if (tr[rt].l l tr[rt].r r) {return tr[rt].maxx;}//if (tr[rt].lazy)pushdown(rt);int mid (tr[rt].l tr[rt].r) 1;PII maxx {0, -1};maxx max(maxx, max(query(rt 1, l, r), query(rt 1 | 1, l, r)));return maxx; } int path[maxn]; int ans[maxn]; int main() {//rd_test();int n, m;read(n, m);for (int i 1; i m; i) {int id, l, r;read(id, l, r);vec[id].push_back({l, r});num[tot] l;num[tot] r;}sort(num 1, num 1 tot);int cnt unique(num 1, num 1 tot) - num - 1;// cout cnt cnt endl;for (int i 1; i n; i) {for (int j 0; j vec[i].size(); j) {// printf(vec[i][j]%d \n, vec[i][j]);vec[i][j].first lower_bound(num 1, num 1 cnt, vec[i][j].first) - num;vec[i][j].second lower_bound(num 1, num 1 cnt, vec[i][j].second) - num;// printf(处理后vec[i][j]%d\n , vec[i][j]);}}build(1, 1, cnt);//cout -- endl;PII maxx;for (int i 1; i n; i) {maxx {0, -1};//保存的数量 编号for (auto it : vec[i]) {// printf(l%d r%d\n, it.first, it.second);maxx max(maxx, query(1, it.first, it.second));}path[i] maxx.second;PII ans {maxx.first 1, i};for (auto it : vec[i]) {// printf(l%d r%d\n, it.first, it.second);update(1, it.first, it.second, ans);}}maxx query(1, 1, cnt);printf(%d\n, n - maxx.first);int now maxx.second;while (now ! -1) {ans[now] 1;now path[now];}for (int i 1; i n; i) {if (!ans[i])printf(%d , i);}return 0;//Time_test(); }
http://www.yutouwan.com/news/304810/

相关文章:

  • 番禺网站设计投资者网站建设
  • 所有网站打不开廊坊有限公司
  • 音乐网站开发模板做网站优化费用
  • 石岩网站建设公司网站的建设及维护
  • 外贸网站模板 外贸网站制作怎么做游戏推广网站
  • 深圳网站建设公司首选wordpress 显示评论内容
  • php网站开发占比wordpress主机服务器销售源码
  • 企业网站的建立流程的第一步是php js做网站
  • 上海住房和城乡建设部网站织梦笑话娱乐网站源码2w数据+36条采集规则
  • 网站建设制作需要多少钱站酷做网站
  • mysql网站数据库wordpress百度网盘
  • 南通网站关键字优化安庆网站关键词优化
  • 杭州建设监理协会网站网站建设电话推广话术
  • 成都哪家做网站好wordpress 修改后台地址
  • 扁平设计网站技术培训
  • 我想在购物网站做代理小程序登录模板
  • 国内校园网站建设flex做的网站
  • 专做童装的网站王稳庄网站建设
  • 手机网站html模板下载成都网站制作机构
  • 怎么评价一个网站设计做的好坏宁波网站搭建
  • 手机端视频网站模板做电子商务网站的总结
  • 设计一个企业网站首页爱链接网如何使用
  • 广州市公司网站建设公司山西太原建设厅官方网站
  • 简述一般网站开发方式深圳市网站首页
  • 海拉尔网站建设+网站设计昨晚兰州发生了什么事
  • 打开网址跳转到国外网站四川住房建设厅网站
  • 网站建设推广特色江苏网站建设市场
  • 企业网站asp小程序商城服务好得
  • 天津网站建设推荐安徽秒搜科技怎么做直播网站刷弹幕
  • 企业网站备案条件京东商城网站开发平台