poj 3687 Labeling Balls 逆向拓扑

简介:

  要求输出每个球的重量,标号越小的重量越轻越好。

  逆向拓扑,从大向小查找入度为0的点,然后赋予最大的值,这样就可以保证小号重量轻了

  好久没敲代码了,完全不会敲了

/*
author:jxy
lang:C/C++
university:China,Xidian University
**If you need to reprint,please indicate the source**
*/
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <queue>
#define INF 1E9
using namespace std;
int n,m;
int map[201][201],in[201];
int ans[201];
int main()
{
    int T;
    scanf("%d",&T);
    while(T--)
    {
        memset(map,0,sizeof(map));
        memset(in,0,sizeof(in));
        scanf("%d%d",&n,&m);
        int a,b,i;
        for(i=0;i<m;i++)
        {
            scanf("%d%d",&b,&a);
            if(map[a][b])continue;
            map[a][b]=1;
            in[b]++;
        }
        int Min=0,j,k=0;
        bool flag=1;
        for(i=n;i>=1;i--)
        {
            for(j=n;j>0,in[j]!=0;j--);
            if(j==0){flag=0;break;}
            for(int nn=1;nn<=n;nn++)
            {
                if(!map[j][nn])continue;
                in[nn]--;
            }
            in[j]=i;
            ans[i]=j;
        }
        if(!flag)printf("-1\n");
        else
        {
            printf("%d",in[1]);
            for(i=2;i<=n;i++)
             printf(" %d",in[i]);
            puts("");
        }
    }
}


目录
相关文章
|
6月前
|
算法 vr&ar 图形学
☆打卡算法☆LeetCode 149. 直线上最多的点数 算法解析
☆打卡算法☆LeetCode 149. 直线上最多的点数 算法解析
【CCCC】L3-018 森森美图 (30分),计算几何+判断三点共线+bfs最短路
【CCCC】L3-018 森森美图 (30分),计算几何+判断三点共线+bfs最短路
148 0
POJ1269 Intersecting Lines(两直线关系)
POJ1269 Intersecting Lines(两直线关系)
62 0
[UVA1364 | POJ | NC]Knights of the Round Table | Tarjan 求点双 | 二分图 | 综合图论
我们可以很轻松地发现,被提出的都是在点双连通分量之外的,比如该图中的1 和 5 ,那么怎么判断哪些点不在环中呢? 此时我们还可以逆向思考,不 在 环 中 的 = = 总 的 − 在 环 中 的,所以说现在问题就转换成了满足条件的环内的点的个数
128 0
[UVA1364 | POJ | NC]Knights of the Round Table | Tarjan 求点双 | 二分图 | 综合图论
POJ-1475,Pushing Boxes(双BFS)
POJ-1475,Pushing Boxes(双BFS)
|
机器学习/深度学习 算法
☆打卡算法☆LeetCode 120. 三角形最小路径和 算法解析
“给定一个三角形,找出自顶向下的最小路径和。”
|
人工智能 BI
[UVA 1599] Ideal Path | 细节最短路
Description New labyrinth attraction is open in New Lostland amusement park. The labyrinth consists of n rooms connected by m passages. Each passage is colored into some color ci .
203 0
|
算法 C++
PTA——7-2 图深度优先遍历
PTA——7-2 图深度优先遍历
588 0