题意:给定一些电子表格,每个单元格里要么是整数要么是公式,公式是=号开头的,用+号连接的字符串。公式中要用到其他单元格的值,而要用到的其他单元格,可能还是个公式。但可以保证,不会形成单元格的环形的引用。其中,行的标号范围是从1到999,列的标号范围是从A到ZZZ。要求在输出的时候将公式替换为数值。
思路:很容易可以看到这和拓扑排序有关,一个单元格值的计算必须要在另一个的之前完成。但是这里没有必要...
分类:
其他好文 时间:
2015-02-05 18:27:42
阅读次数:
202
题意:给定一些任务,和任务序列 i j,意思是要求任务 i 必须要在任务 j 前完成。给出这样的任务序列。
思路:拓扑排序。
注意的是任务是从1开始的到n。
Code:
#include
#include
bool dfs(int u,int n);
bool toposort(int n);
int graph[105][105];
int topo[105];
int t;
in...
分类:
编程语言 时间:
2015-02-04 21:49:34
阅读次数:
226
拓扑排序:对有向图的所有结点排序,使得每一条有向边(u,v)对应的u都排在v的前面。
如果图中存在有向环,则不存在拓扑排序,反之则存在。把不包含有向环的有向图称为有向无环图(Directed Acyclic Graph,DAG)。
//因为查找的是有向边(u,v),所以在放置u之前需要把比u偏序大的所有的v放置好。
//所以,所有元素的放置是从后往前放的。
//用到的vis数组,vis[u]=...
分类:
编程语言 时间:
2015-02-04 20:26:34
阅读次数:
255
题意:n个姓名,按照某种“字典序”。
问如果存在这样的字典序,输出字典序'a'到‘z’26个字母的顺序。
思路:拓扑排序。对于str[i]和str[i+1]如果在位置k出现不同,那么x=str[i][k]-'a'+1,y=str[i+1][k]-'a'+1,从x->y连一条边,y的入度in[y]++。
然后拓扑排序,如果形成环,就说明不行,不然依次输出对应字符。(ps:len1为st...
分类:
其他好文 时间:
2015-02-04 18:47:09
阅读次数:
171
Codeforces Round #290 Div1 A
Problem
给N串字符串Si,通常定义字典序大小关系为 'a'
Limits
Time Limit(ms): 2000
Memory Limit(MB): 256
N: 100
|Si|: 100
Solution
用图论方法解决,发现满足拓扑关系。枚举相邻两串Si 与 S(i+1),若发现Si...
分类:
其他好文 时间:
2015-02-04 09:29:58
阅读次数:
191
CodeForces510 C. Fox And Names(拓扑排序)...
分类:
编程语言 时间:
2015-02-03 23:04:19
阅读次数:
249
题目链接:http://codeforces.com/contest/510/problem/C题目大意:构造一个字母表,使得按照你的字母表能够满足输入的是按照字典序排下来。递归建图:竖着切下来,将每个名字的第x个字母从上到下连接建图。然后求拓扑排序。之所以要拓扑排序,因为要判断在x-1里面有a--...
分类:
编程语言 时间:
2015-02-03 14:40:27
阅读次数:
215
传送:http://codeforces.com/problemset/problem/510/C拓扑排序 一个小trick,字典序不仅要求比较字母大小,还有长度~容易漏掉。。#include using namespace std;vector v[101];queue q;char str[10...
分类:
其他好文 时间:
2015-02-03 14:37:31
阅读次数:
126
传送门:cf 510D
给定n个字符串,问能否存在这样的字母表,使得字符串的排序满足字典序。即依据新的字母表,排序满足字典序大小。
假设满足字典序,则我们可以依据已有的字符串得出各字母之间的大小关系,然后通过拓扑排序来判断是否存在可行解,输出任意解,因此只需要判断是否存在解即可。
/***************************************************...
分类:
编程语言 时间:
2015-02-03 09:34:18
阅读次数:
248
首先我们可以确定的是,对于val值小于0的节点都变成0. 假设一个集合内2个房间都能任意到达,那么我就可以吧集合内的所有点的价值都取到,并且可以达到任一点。实际上集合内的每个点是相同的,这样的集合就是一个强连通分量。 那么我们就可以用tarjin算法进行强连通缩点, 最后形成一个dag的图。在dag的图上面进行dp。可以先用拓扑排序后dp。或者建反响边记忆化搜索 。
VIEW CDDE
...
分类:
其他好文 时间:
2015-02-02 23:18:54
阅读次数:
196