昨晚1h20min做完了3个题,看下排名600左右,感觉稳可以上分了,于是看了下D构造?感觉不太会没细想于是看了看E感觉好像和之前有一个题目很像(那个题我讨论了好长时间),然后磨叽磨叽还有20min感觉写不了一个题了,于是看了下排名仍然是600左右,于是上床睡觉了(玩手机)毕竟第二天早八这谁顶得住。

结果今天晚上发现我™被fst了,TLE我人傻了,本来晚上不想补题了,看见fst心情十分不爽,于是稍微改了改代码就A了,我人傻了???

不过最终还加分了?2题还加分确实说明我菜


D. Dogeforces

二分抄代码题解
上级严格比下级打,于是lca分数从小到大进行构造,用并查集维护连通关系,毕竟并查集就是一棵树啊看代码很容易理解

看上述题解即可

#define IO ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr)
#pragma GCC optimize(2)
#include<iostream>
#include<algorithm>
using namespace std;
constexpr int N=200010;
int n,m;
struct node
{int u,v;int val;bool operator<(const node&o)const{return val<o.val||val==o.val&&u<o.u||val==o.val&&u==o.u&&v<o.v;}
}b[510*510];
int fa[N],p[N],c[N];
int cnt,tot;
int find(int x){return x==p[x]?x:p[x]=find(p[x]);}
void prework()
{cin>>n;for(int i=1;i<=n;i++)for(int j=1;j<=n;j++){int val;cin>>val;if(i<j) b[++cnt]=(node){i,j,val};else if(i==j) c[i]=val;}for(int i=1;i<=n;i++) p[i]=i;
}
void solve()
{tot=n;sort(b+1,b+1+cnt);for(int i=1;i<=cnt;i++){int u=find(b[i].u),v=find(b[i].v);if(u==v) continue;int top=max(c[u],c[v]);if(top==b[i].val){if(c[u]==b[i].val)p[v]=u,fa[v]=u;elsep[u]=v,fa[u]=v;}else if(top<b[i].val){++tot;p[tot]=tot;c[tot]=b[i].val;p[u]=p[v]=tot;fa[u]=fa[v]=tot;}}
}
void print()
{cout<<tot<<'\n';for(int i=1;i<=tot;i++) cout<<c[i]<<' ';cout<<'\n';int rt=0;for(int i=1;i<=tot;i++) if(find(i)==i) rt=i;cout<<rt<<'\n';for(int i=1;i<=tot;i++)if(find(i)!=i) cout<<i<<' '<<fa[i]<<'\n';
}
int main()
{IO;prework();solve();print();return 0;
}

题解?(×)
总结?(√)

要加油哦~
感觉越来越没时间学这破东西了,只能熬夜打打cf了

codeforces1494 D. Dogeforces(构造)相关推荐

  1. CodeForces - 1494D Dogeforces(贪心+构造)

    题目链接:点击查看 题目大意:给出 nnn 个叶子结点和一个 n∗nn*nn∗n 的 LCALCALCA 矩阵,其中 LCALCALCA 表示的是最近公共祖先节点的权值,现在需要构造出一棵自顶向下权值 ...

  2. LeetCode简单题之构造矩形

    题目 作为一位web开发者, 懂得怎样去规划一个页面的尺寸是很重要的. 所以,现给定一个具体的矩形页面面积,你的任务是设计一个长度为 L 和宽度为 W 且满足以下要求的矩形的页面.要求: 你设计的矩形 ...

  3. 兑换量子计算机,阅读 | 【量子计算机】构造置换量子门

    原标题:阅读 | [量子计算机]构造置换量子门 量子计算机的一个基本组成单位叫量子门(quantum gate),下面简单介绍些基本概念. 量子比特和量子态 量子计算机的信息存储单元是一种叫做量子比特 ...

  4. [ActionScript 3.0] AS向php发送二进制数据方法之——在URLRequest中构造HTTP协议发送数据...

    主类 HTTPSendPHP.as 1 package 2 { 3 import com.JPEGEncoder.JPGEncoder; 4 import com.fylib.httpRequest. ...

  5. js把base64串解析成中文_回文问题终极篇:最小代价构造回文串

    学算法认准 labuladong 东哥带你手把手撕力扣? 点击下方卡片即可搜索? 读完本文,你可以去力扣完成第 1312 题「让字符串成为回文串的最少插入次数」,难度 Hard. 回文串就是正着读反着 ...

  6. php构造和析构方法,php5构造函数与析构函数实例

    自php5起,有了构造函数与析构函数. 这使得php更富有面向对象的魅力了. 在php4时,构造函数用的是与类同名的函数来进行构造这个动作. 例如: 复制代码 代码示例: /* * myclass.p ...

  7. 消除左递归实验代码_「leetcode」108. 构造二叉搜索树【递归】【迭代】详解!

    构造二叉搜索树,一不小心就平衡了 ❞ 108.将有序数组转换为二叉搜索树 将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树. 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树 ...

  8. 对象特性--构造函数调用规则

    默认情况下,C++编译器至少给一个类添加3个函数: 1.默认构造函数(无参,函数体为空) 2.默认析构函数(无参,函数体为空) 3.默认拷贝构造函数,对属性进行值拷贝 1.创建一个类,C++编译器会给 ...

  9. C++派生类与基类构造函数调用次序

    本文用来测试C++基类和派生类构造函数,析构函数,和拷贝构造函数的调用次序. 运行环境:SUSE Linux Enterprise Server 11 SP2  (x86_64) #include & ...

最新文章

  1. 我的Dll(动态链接库)学习笔记
  2. 利用进化算法进行仿k-means聚类(可称之为EA-KMeans算法)
  3. RequestMapping || @RequestMapping 模糊匹配功能
  4. Greasemonkey——打造自己的互联网
  5. Elasticsearch 7.0 已经发布,盘他!
  6. 为什么要重映射那个GPIO_Remap_SWJ_JTAGDisable
  7. 你发现了吗?数学还能这么美
  8. 【渝粤教育】21秋期末考试服务标准化10011k1
  9. int mysql_「MYSQL」MYSQL中的int(11)到底代表什么意思?
  10. 如何安装php5.5,源码安装php5.5
  11. 【Ansys Workbench】—响应面优化操作步骤
  12. 查看服务器sftp用户信息,linux查看sftp服务器配置
  13. java ajax 导入excel_通过ajax上传excel
  14. H5一键复制 兼容iOS
  15. EBC动作片 记录EBC 的 景 和 人
  16. android+第三发输入法控制,android输入法属性使用,软键盘隐藏、显示状态控制大揭秘...
  17. 破解手机辐射危害健康的流言
  18. ELK技术栈-Logstash的详细使用
  19. 百度“石榴算法”的发展趋势
  20. 从Flash中导出透明背景的GIF动画

热门文章

  1. python拼图游戏_乐趣无穷的Python课堂
  2. 360浏览器5兼容模式吗_个独模式真能将企业总体税负降低至5%吗,为何大家都热衷核定征收...
  3. ffmpeg库编译加文字_1.编译ffmpeg库
  4. mysql采用 级触发_Mysql高级之触发器(trigger)
  5. [JavaWeb-XML]XML概述
  6. [JavaWeb-MySQL]数据库的备份和还原
  7. 洛谷 P2853 [USACO06DEC]Cow Picnic S-dfs
  8. 高等数学上-赵立军-北京大学出版社-题解-练习5.1
  9. [蓝桥杯2019初赛]特别数的和-枚举
  10. DXSDK_June10安装错误