HLG 2025
确定大小 | ||||||
|
||||||
Description | ||||||
现在有N个字母,(N <= 26),我们称之为A、B、C、D......。这次他们之间想确定大小关系。 但是现在只有一些残缺不全的关系,比如A > Z,然后没了...... 现在给出N个字母,(前N个大写字母),然后给出M个关系,每个关系只有大于和小于两种。 最后判断那些是可以确定他应有的大小位置的。 (没有给出的关系,均属于不可确定) |
||||||
Input | ||||||
多组测试数据:每组测试数据: 第一行两个整数N,M。 接下来M行,每行一个关系,形式如:A>B A<B (M < 30) |
||||||
Output | ||||||
按照ABCD...的顺序,输出可以确定的势力和他的排名。 如果都不可以确定,则输出-1。 |
||||||
Sample Input | ||||||
3 2 A>B B>C 3 3 A>B B>C C>A |
||||||
Sample Output | ||||||
A 1 B 2 C 3 -1 |
||||||
Source |
本题要求输出可以确定的人的排名2,首先需要建两个图,正向建一个反向建一个。
由于是有向图,对两个图中的每一个点进行bfs,记录以他为起始点所能扩展的点的数量
我的程序中用head和tail数组进行存储的。对于每个点,如何head值和tail值加起来的和为n-1
那么这个点的名次就是可以确定的了,
他的名次其实就是tail的值+1
还有一个问题就是结构体edge大小的问题
,我刚开始开的maxn,结果wa了,他的大小应该为2*maxn
#include<stdio.h>
#include<iostream>
#include<queue>
#include<string.h>
#include<algorithm>
using namespace std;
const int maxn=;
int head[maxn],tail[maxn];
int vis[maxn];
struct Edge{
int to;
int next;
}edge1[maxn*],edge2[maxn*];
int head1[maxn];
int head2[maxn];
int tot1,tot2;
int n,q;
void addedge(int u,int v){
edge1[tot1].to=v;
edge1[tot1].next=head1[u];
head1[u]=tot1++;
edge2[tot2].to=u;
edge2[tot2].next=head2[v];
head2[v]=tot2++;
}
int head_num,tail_num;
void head_bfs(int u){
for(int i=;i<=n;i++)
vis[i]=;
vis[u]=;
queue<int>q;
q.push(u);
int v;
while(!q.empty()){
v=q.front();
q.pop();
for(int i=head1[v];i!=-;i=edge1[i].next){
if(!vis[edge1[i].to]){
vis[edge1[i].to]=;
q.push(edge1[i].to);
head_num++;
}
}
}
}
void tail_bfs(int u){
for(int i=;i<=n;i++)
vis[i]=;
vis[u]=;
queue<int>q;
q.push(u);
int v;
while(!q.empty()){
v=q.front();
q.pop();
for(int i=head2[v];i!=-;i=edge2[i].next){
if(!vis[edge2[i].to]){
vis[edge2[i].to]=;
q.push(edge2[i].to);
tail_num++;
}
}
}
}
void init(){
tot1=;
tot2=;
memset(head1,-,sizeof(head1));
memset(head2,-,sizeof(head2));
}
int main(){ while(scanf("%d%d",&n,&q)!=EOF){
init();
char u,v,temp;
getchar();
int u1,v1;
for(int i=;i<=q;i++){
scanf("%c%c%c",&u,&temp,&v);
getchar();
u1=u-'A'+;
v1=v-'A'+;
if(temp=='>')
addedge(u1,v1);
else
addedge(v1,u1);
}
int cnt;
for(int i=;i<=n;i++){
head_num=;
head_bfs(i);
head[i]=head_num;
tail_num=;
tail_bfs(i);
tail[i]=tail_num;
}
bool flag=false;
char c='A';
for(int i=;i<=n;i++){
if(head[i]+tail[i]==n-){
printf("%c %d\n",c+i-,tail[i]+);
flag=true;
}
}
if(!flag)
printf("-1\n");
}
return ;
}
HLG 2025的更多相关文章
- 轮值CEO胡厚崑:到2025年所有的企业都将用到云(云的2.0时代,会有几千朵云几万朵云升起来,这将产生不同的技术模式、商业模式、思维模式)
2016年09月04日 07:38 中国经营报 李凡 在全国工商联“2016年中国民营企业500强”排行榜上夺得头把交椅的华为,向外界描绘了面向未来进一步做大做强的路径. 华为创始人任正非于201 ...
- URAL 2025. Line Fighting (math)
2025. Line Fighting Time limit: 1.0 second Memory limit: 64 MB Boxing, karate, sambo- The audience i ...
- 2025战略,中秋送福利!免费开源ERP Odoo Windows 一键傻瓜式安装版发布
概述 为了帮助更多的小白,能够快速的体验Odoo的强大功能,针对国内大多数小白用户无法快速直接体验Odoo的尴尬,开源智造呕心沥血,历经数百次的测试和整合终于赶在中秋节这天将Odoo所需要的复杂运行环 ...
- loj #2025. 「JLOI / SHOI2016」方
#2025. 「JLOI / SHOI2016」方 题目描述 上帝说,不要圆,要方,于是便有了这道题. 由于我们应该方,而且最好能够尽量方,所以上帝派我们来找正方形.上帝把我们派到了一个有 NNN ...
- "中国制造2025"+"互联网+",引领制造业发展
"中国制造2025"+"互联网+",引领制造业发展
- 2025年VR虚拟现实技术将渗透人们日常生活
2025年VR虚拟现实技术将给人们带来什么好处?今年早些时候,虚拟现实VR游戏制造商Survios在广州一个非常大的购物中心内的一个小型灰色墙壁店面,通过AMC中心植入了其位置游戏市场上的第一面旗帜. ...
- 2022Gartner容器预测:2025年85%的企业将使用容器管理服务
近日,国际知名权威分析机构Gartner发布了最新<全球容器管理预测>.预测中指出:在加速的数字化转型驱动下,到2025年全球容器管理领域市场规模将突破14亿美元,预计年复合增长率将达到2 ...
- poj 1806 Manhattan 2025
点击打开链接 题目大意就是给定一个最大歩数,让你输出你在三维的空间中可以到达的位置的切片,注意当歩数大于9的时候就不需要输出了! #include<stdio.h> #include< ...
- hlg 2130 状压dp
基本的状压dp 需要注意的是两点之间直线最短 所以不需要进行floyd 由于把dp的memset放在了初始化0的后面de了好久的bug.. #include<stdio.h> #inclu ...
随机推荐
- 提升 Web开发性能的 10 个技巧
随着网络的高速发展,网络性能的持续提高成为能否在芸芸App中脱颖而出的关键.高度联结的世界意味着用户对网络体验提出了更严苛的要求.假如你的网站不能做到快速响应,又或你的App存在延迟,用户很快就会移情 ...
- 图片压缩(pc端和移动端都适用)
最近在做移动端遇到了一个问题就是: 手机拍照后,图片过大如果上传到服务器务必会浪费带宽,最重要的是流量啊 别慌,好事儿来了,务必就会有人去研究研究图片的压缩: 鄙人结合前人的经验,结合自己实战,总结出 ...
- 激励CEO们最好的办法就是鼓励他们不要停止思考
我们应该怎样在企业中释放出每一个人都可能内在的自我驱动力呢? 我创业十多年来,结识了很多创业家,他们中很多和我一样也试图通过学习实践找到有效管理的捷径,一个最简单的法则,最好还是比较容易的.事实上,最 ...
- UWP中获取Encoding.Default
Encoding.GetEncoding(0); 即可
- 自己太水了—HDOJ_2212
Problem Description A DFS(digital factorial sum) number is found by summing the factorial of every d ...
- KissXML的XPath选取问题
XMPPFramework用的XML解析库还是大神自己写的KissXML,有些人生下来就是让人仰望的,哎. 进入主题,如下一段XML: <paramsxmlns="namespace& ...
- Jordan 标准型的推论
将学习到什么 从 Jordan 标准型出发,能够获得非常有用的信息. Jordan 矩阵的构造 Jordan 矩阵 \begin{align} J=\begin{bmatrix} J_{n_1}( ...
- Codeforces Round #273 (Div. 2)-B. Random Teams
http://codeforces.com/contest/478/problem/B B. Random Teams time limit per test 1 second memory limi ...
- 解决wpf popup控件遮挡其他程序的问题
public class PopupNonTopmost : Popup { public static DependencyProperty TopmostProperty = Window.Top ...
- 洛谷五月月赛【LGR-047】划水记
虽然月赛有些爆炸,但我永远资瓷洛谷! 因为去接水,所以迟到了十几分钟,然后洛谷首页就打不开了-- 通过洛谷题库间接打开了比赛,看了看\(TA\),WTF?博弈论?再仔细读了读题,嗯,判断奇偶性,不过要 ...