Codeforces Round #677 (Div. 3) D. Districts Connection思维1200
题目链接 Problem - 1433D - Codeforces
题目
美好的一天,从看不懂题目开始~~

4
5
1 2 2 1 3
3
1 1 1
4
1 1000 101 1000
4
1 2 3 4
YES
1 3
3 5
5 4
1 2
NO
YES
1 2
2 3
3 4
YES
1 2
1 3
1 4
题意
给n个区域,用n-1个路把它们连起来,使每个地方都能到达其它任何地方
但是呢,每个区域都属于一个组织,不能让两个相同的组织直接相连
解析
想到了就很容易过的,比如说拿1当中介,所有的与1不同组织的区域都和1相连,与1同组织的与temp相连
其中temp=“和1非同组织的序号”
AC代码
#include <iostream>
#include <cstdio>
#include <algorithm> using namespace std; typedef long long ll; int a[5010]; int main()
{
int t;
cin >> t;
while(t --)
{
int n;
cin >> n;
int lag = 0;
for(int i = 1; i <= n; i ++)
{
cin >> a[i];
if(i!= 1 && a[i] != a[1])
lag = i;
}
if(lag==0)
cout << "NO" << endl;
else
{
cout << "Yes" << endl;
for(int i = 2; i <= n; i ++)
if(a[i] != a[1])
cout << 1 << ' ' << i << endl;
else cout << i << ' '<< lag << endl;
}
}
return 0;
}
英语小芝士
district 区域,地方
distinct 不同的,清楚的,明显的
gang 伙,群,组织
输出部分的:
Each road should be presented as a pair of integers xi and yi (1≤xi,yi≤n;xi≠yi1≤xi,yi≤n;xi≠yi), where xi and yi are two districts the i-th road connects.
每条路都应该用一对整数xi,yi表示, xi,yi是不同的区域
Codeforces Round #677 (Div. 3) D. Districts Connection思维1200的更多相关文章
- Codeforces Round #677 (Div. 3) 题解
Codeforces Round #677 (Div. 3) 题解 A. Boring Apartments 题目 题解 简单签到题,直接数,小于这个数的\(+10\). 代码 #include &l ...
- Codeforces Round #677 (Div. 3)【ABCDE】
比赛链接:https://codeforces.com/contest/1433 A. Boring Apartments 题解 模拟即可. 代码 #include <bits/stdc++.h ...
- Codeforces Round #677 (Div. 3) D/1433D Districts Connection
https://codeforces.com/contest/1433/problem/D 找两个不同权值的节点A.B连起来,所有与A不同权值的连到A上,相同的连到B上. #include<io ...
- Codeforces Round #677 (Div. 3) E、G题解
E. Two Round Dances #圆排列 题目链接 题意 \(n\)(保证偶数)个人,要表演一个节目,这个节目包含两种圆形舞蹈,而每种圆形舞蹈恰好需要\(n/2\)个人,每个人只能跳一种圆形舞 ...
- Codeforces Round #677 (Div. 3) G. Reducing Delivery Cost(dijkstra算法)
题目链接:https://codeforces.com/contest/1433/problem/G 题解 跑 \(n\) 遍 \(dijkstra\) 得到任意两点间的距离,然后枚举哪一条边权为 \ ...
- Codeforces Round #677 (Div. 3)
F. Zero Remainder Sum || dp #include <cstdio> #include <algorithm> #include <cstring& ...
- Codeforces Round #353 (Div. 2) C. Money Transfers (思维题)
题目链接:http://codeforces.com/contest/675/problem/C 给你n个bank,1~n形成一个环,每个bank有一个值,但是保证所有值的和为0.有一个操作是每个相邻 ...
- Codeforces Round #517 (Div. 2) C. Cram Time(思维+贪心)
https://codeforces.com/contest/1065 题意 给你a,b,让你找尽量多的自然数,使得他们的和<=a,<=b,用在a和b的自然数不能重复 思路 假如只有一个数 ...
- Divide by Zero 2021 and Codeforces Round #714 (Div. 2) B. AND Sequences思维,位运算 难度1400
题目链接: Problem - B - Codeforces 题目 Example input 4 3 1 1 1 5 1 2 3 4 5 5 0 2 0 3 0 4 1 3 5 1 output 6 ...
随机推荐
- OpenCv基础_四
Harris角点检测 理解 内部点:蓝框所示,无论滑动窗口水平滑动还是竖直滑动,框内像素值都不会发生大的变化 边界点:黑框所示,滑动窗口沿着某一个方向滑动框内像素点不会发生大的改变,但是沿着另一个方向 ...
- 九鼎RK3399笔记一:Linux平台手册
@ 目录 一.git下载九鼎SDK 二.安装所需的软件包: 三.安装 kernel 及 u-boot 编译需要依赖的软件包 四.安装文件系统需要依赖的软件包 五.安装 Buildroot 编译需要依赖 ...
- MySQL SQL Injection Cheat Sheet
MySQL SQL Injection Cheat Sheet Some useful syntax reminders for SQL Injection into MySQL databases- ...
- 开源三轴云台EVVGC(simple BGC)分析
一. 主程序分析 主程序结构清晰,流程如图所示,下面将对每个部分做详细分析 二. 系统初始化 系统初始化部分的流程如上图所示,下面对每部分做具体分析 1. 时钟初始化 该部分主要是使能DWT,用DWT ...
- redis 过期键的删除策略?
1.定时删除:在设置键的过期时间的同时,创建一个定时器 timer). 让定时器在键 的过期时间来临时,立即执行对键的删除操作. 2.惰性删除:放任键过期不管,但是每次从键空间中获取键时,都检查取得的 ...
- 简述 Memcached 内存管理机制原理?
早期的 Memcached 内存管理方式是通过 malloc 的分配的内存,使用完后通过 free 来回收内存,这种方式容易产生内存碎片,并降低操作系统对内存的管理效 率.加重操作系统内存管理器的负担 ...
- 180度\360度sg90舵机的使用及代码程序
大部资料都是在网上找到网友大神所共享的,在网上找了几种舵机的,刚接触有点懵,之后找得多了就理解了,想要控制一个硬件就要先了解这个硬件.这里有介绍180度舵机和360度舵机的具体使用,有网上大神的程序, ...
- C# Tutorial for Frontend Developer
1.Basic Hello World Console output -> console.log Console.WriteLine("Hello World!"); Va ...
- 使用jenkins实现前端自动化打包部署(Linux版本)
我们这边好多小组觉得每次测试人员叫我们开发打包部署到某某个测试环境人工操作比较麻烦,因为他们想做到只专注于开发,不管这些琐碎的事.于是有个组长问我前端能不能用Jenkins去执行这一个固定的流程,因为 ...
- 浅谈JavaScript原型与原型链
对于很多前端开发者而言,JavaScript的原型实在是很让人头疼,所以我这边就整理了一下自己对应原型的一点理解,分享给大家,供交流使用 原型 说起原型,那就不得不说prototype.__proto ...