把每一次输入的一组数字存下来,然后把每个数字出现的组数存下来

然后找只出现过一次的数字a,那么这个数字a不是开头就是结尾,默认为开头(是哪个都无所谓),然后去找和它出现在同一组的两个数字b和c,而b和c同时出现的只有两组,除了已经知道的,就是需要去查找的,然后循环,同时存在的组数,找到两个数字a和b同时出现的组而且不是第一组,找到之后的组的第三个数字,就是要接在后面的数字,然后循环这个操作

#include <bits/stdc++.h>
using namespace std; int ma[][];//记录每组数据
vector<int>p[];//记录数字i出现过的组数
int ans[];//记录结果
int main() {
int n;
scanf("%d",&n);
for(int i=; i<=n-; i++) {
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
p[a].push_back(i);
p[b].push_back(i);
p[c].push_back(i);
ma[i][]=a;
ma[i][]=b;
ma[i][]=c;
}
auto a=,b=,c=;
int last=;//记录b和c出现过的组数
for(int i=; i<=n; i++) { //找开头的3个数(b和c的位置不重要)
if(p[i].size()==) {//如果出现的组数是1
int temp=p[i][];//记录出现的组数
last=temp;//
a=i;//记录第一个数字
for(int j=; j<=; j++) {
if(p[ma[temp][j]].size()==)b=ma[temp][j];
else if(p[ma[temp][j]].size()==)c=ma[temp][j];
}
}
if(a)break;
}
int cou=;
ans[++cou]=a;
ans[++cou]=b;
ans[++cou]=c;
while(cou!=n) {
int temp=;//记录组数
for(int i=; i<p[b].size(); i++) { //找b和c相同的组数
for(int j=; j<p[c].size(); j++) {
// 同时出现在同一组 而且不是第一组
if(p[b][i]==p[c][j]&&p[b][i]!=last) {
temp=p[b][i];//更新组数
last=temp;//更新
a=b;//往前移
b=c;//往前移
break;
}
}
if(temp)break;//如果找到了,循环结束
}
for(int i=; i<=; i++) { //
if(ma[temp][i]!=a&&ma[temp][i]!=b) { //如果成功出现的第三个数字
c=ma[temp][i];//第三个数字给c
break;//结束
}
}
ans[++cou]=c;
}
for(int i=; i<=n; i++) printf("%d ",ans[i]);
return ;
}

Codeforces Round #601 (Div. 2) C League of Leesins的更多相关文章

  1. Codeforce 1255 Round #601 (Div. 2) C. League of Leesins (大模拟)

    Bob is an avid fan of the video game "League of Leesins", and today he celebrates as the L ...

  2. 【cf比赛记录】Codeforces Round #601 (Div. 2)

    Codeforces Round #601 (Div. 2) ---- 比赛传送门 周二晚因为身体不适鸽了,补题补题 A // http://codeforces.com/contest/1255/p ...

  3. Codeforces Round #601 (Div. 2)

    传送门 A. Changing Volume 签到. Code /* * Author: heyuhhh * Created Time: 2019/11/19 22:37:33 */ #include ...

  4. Codeforces Round #601 (Div. 2) E2. Send Boxes to Alice (Hard Version)

    Codeforces Round #601 (Div. 2) E2. Send Boxes to Alice (Hard Version) N个盒子,每个盒子有a[i]块巧克力,每次操作可以将盒子中的 ...

  5. Codeforces Round #601 (Div. 2) E1 Send Boxes to Alice (Easy Version)

    #include <bits/stdc++.h> using namespace std; typedef long long ll; ; int a[N]; int n; bool pr ...

  6. Codeforces Round #601 (Div. 2) D Feeding Chicken

    //为了连贯,采取一条路形式,从第一行开始 也就是s型 #include <bits/stdc++.h> using namespace std; ; char str[MAXN][MAX ...

  7. Codeforces Round #601 (Div. 2) B Fridge Lockers

    //题目要求的是每一个点最少要有两条边连接,所以可以先构成一个环.然后再把剩余的最短的边连接起来 #include<iostream> #include<algorithm> ...

  8. Codeforces Round #601 (Div. 2) A Changing Volume

    好吧,其实我拿到这个题的时候,首先想到了bfs,写完之后,开开森森的去交代码,却在第二个数据就TEL,然后优化半天,还是不行. 最终,我盯着1,2,5发呆半天,wc,然后直接贪心 #include&l ...

  9. Codeforces Round #601 (Div. 2)E(寻找质因子,DP)

    先分解质因数,对于当前a[i],假设当前的质因数为x,这个位置要满足能被k整除,有两个可能,要么是它向后一个转移x%k个,要么是后一个向它转移k-x%k个. 对于每一个a[i]满足后,因为只会对下一个 ...

随机推荐

  1. Bash脚本编程学习笔记06:条件结构体

    简介 在bash脚本编程中,条件结构体使用if语句和case语句两种句式. if语句 单分支if语句 if TEST; then CMD fi TEST:条件判断,多数情况下可使用test命令来实现, ...

  2. 洛谷P1063能量项链(区间dp)

    题目描述: 给定一串序列x[],其中的每一个Xi看作看作一颗珠子,每个珠子包含两个参数,head和tail,前一颗的tail值是后一个的head值,珠子呈现环形(是一条项链),所以最后一颗的tail是 ...

  3. ECMAScript 6基础

    ECMAScript 和 JavaScript 是什么关系? 1996 年 11 月,JavaScript 的创造者 Netscape 公司,希望JavaScript能够成为国际标准,将其提交给标准化 ...

  4. 将String类型的json数据转换为真正的json数据

    问题 在做JavaWeb项目的时候,我们经常需要将Java对象转化为Json数据格式响应到前台页面,但是转化完成之后,看着是Json类型的数据格式,但实际上是字符串类型,在这里说两个方法将String ...

  5. linux命令su,sudo 使用和区别

    1- sudo 与 su 两个命令的最大区别是: sudo 命令需要输入当前用户的密码,su 命令需要输入 root 用户的密码.另外一个区别是其默认行为.sudo 命令只允许使用提升的权限运行单个命 ...

  6. 递归查询 start with connect by prior

    1.语法:start with 子节点ID='...' connect by prior 子节点ID = 父节点ID 含义:查询结果我所有的后代节点(包括我) 例子: select id,parent ...

  7. P1339 热浪【最短路】

    #include <bits/stdc++.h> #define dbg(x) cout << #x << "=" << x < ...

  8. JS绑定事件处理函数及处理流程

    一.事件绑定的几种方式: 1.1 ele.on+“事件名“:如div.onclick = function(event){ }; 1.1.1这种方式兼容性非常好,但一个元素的同一个事件上只能绑定一个处 ...

  9. JavaScript-事件处理程序

    DOM事件流: 1.事件冒泡 2.事件捕获 DOM2事件流: 1.事件捕获阶段 2.处于目标阶段 3.事件冒泡阶段 DOM3事件 事件处理程序: 1.HTML事件处理程序: 例一:<input ...

  10. spring整合websocket,如何在服务端依赖注入service

    1.在pom.xml文件中添加jar包: <properties> <spring.version>4.0.5.RELEASE</spring.version> & ...