티스토리 뷰

Algorithm/BOJ

10159 저울

henry1214 2018. 2. 26. 02:32

https://www.acmicpc.net/problem/10159



모든 정점에 대하여 플로이드를 돌리고 비교 관계를 확인한다. 두 정점에 대하여 앞쪽이 더 큰지, 뒤쪽이 더 큰지 둘다 알 수 없다면 비교 관계를 알 수 없다.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <cstdio>
 
int n,m,i,j,k,d[101][101];
 
int main()
{
    scanf("%d %d",&n,&m);
    while(m--scanf("%d %d",&i,&j),d[i][j]|=1;
    for(k=1;k<=n;k++for(i=1;i<=n;i++for(j=1;j<=n;j++)
        d[i][j]|=d[i][k]&d[k][j];
    for(i=1;i<=n;i++)
    {
        int cnt=0;
        for(j=1;j<=n;j++if(!d[i][j] && !d[j][i]) cnt++;
        printf("%d\n",cnt-1);
    }
    return 0;
}
cs


'Algorithm > BOJ' 카테고리의 다른 글

2660 회장뽑기  (0) 2018.02.26
10163 색종이  (0) 2018.02.26
2947 나무 조각  (0) 2018.02.23
2702 초6 수학  (0) 2018.02.23
1939 중량제한  (0) 2018.02.23
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday