기록하지 않았다면 잃어버릴 시간들
Home
  • 분류 전체보기 (184)
    • Lang (6)
      • c++ (2)
      • Java (2)
      • python (2)
    • 프레임워크 (18)
      • Spring (16)
      • JPA (2)
    • 알고리즘 (141)
      • 이론 (4)
      • 백준 (59)
      • Codility (13)
      • 프로그래머스 (65)
    • CS (4)
      • 운영체제 (0)
      • 자료구조 (0)
      • DB (4)
      • 네트워크 (0)
      • 보안 (0)
    • 기타 (7)
    • 프로젝트 (4)
      • 게시판 만들기로 배우는 Spring Data JP.. (4)
Home
  • 분류 전체보기 (184)
    • Lang (6)
      • c++ (2)
      • Java (2)
      • python (2)
    • 프레임워크 (18)
      • Spring (16)
      • JPA (2)
    • 알고리즘 (141)
      • 이론 (4)
      • 백준 (59)
      • Codility (13)
      • 프로그래머스 (65)
    • CS (4)
      • 운영체제 (0)
      • 자료구조 (0)
      • DB (4)
      • 네트워크 (0)
      • 보안 (0)
    • 기타 (7)
    • 프로젝트 (4)
      • 게시판 만들기로 배우는 Spring Data JP.. (4)
블로그 내 검색

기록하지 않았다면 잃어버릴 시간들

새로운 것을 배우는게 즐거운 개발자입니다.

  • 알고리즘/백준

    BOJ_2252 / C++

    2022. 1. 3.

    by. 내이름은 킹햄찌

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

     

    2252번: 줄 세우기

    첫째 줄에 N(1 ≤ N ≤ 32,000), M(1 ≤ M ≤ 100,000)이 주어진다. M은 키를 비교한 회수이다. 다음 M개의 줄에는 키를 비교한 두 학생의 번호 A, B가 주어진다. 이는 학생 A가 학생 B의 앞에 서야 한다는 의

    www.acmicpc.net

    백준 온라인저지 2252번 문제입니다. 

    위상정렬을 이용해서 풀었습니다.

    #include<iostream>
    #include<queue>
    #include<vector>
    
    using namespace std;
    
    int N, M;
    int num[32001];
    vector<int> v[32001];
    
    void Input() {
    	int a, b;
    	cin >> N >> M;
    	for (int i = 0; i < M; i++) {
    		cin >> a >> b;
    		v[a].push_back(b);
    		num[b]++;
    	}
    }
    
    void solution() {
    	queue<int> current;
    	for (int i = 1; i <= N; i++)
    		if (num[i] == 0) current.push(i);
    
    	while (!current.empty()) {
    		int i = current.front(); current.pop();
    		cout << i << " ";
    
    		for (int j = 0; j < v[i].size(); j++)
    			if (--num[v[i][j]] == 0)
    				current.push(v[i][j]);
    	}
    }
    
    int main(void) {
    	Input();
    	solution();
    }

    아이디어

    위상정렬 기본 개념이용

     

    '알고리즘 > 백준' 카테고리의 다른 글

    BOJ1516/ C++  (0) 2022.01.03
    BOJ14567/ C++  (0) 2022.01.03
    BOJ1516/ C++  (0) 2022.01.03
    BOJ_16234 / C++  (0) 2021.12.24
    BOJ_14502 / C++  (0) 2021.10.03

    댓글

    관련글

    • BOJ1516/ C++ 2022.01.03
    • BOJ14567/ C++ 2022.01.03
    • BOJ1516/ C++ 2022.01.03
    • BOJ_16234 / C++ 2021.12.24
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

Powered by ⓒ Kakao Corp.

Designed by Nana
블로그 이미지
내이름은 킹햄찌

티스토리툴바