Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- 백준
- c#
- InsertRange
- Visual Studio
- List 찾기
- 호스트
- OSI 3계층
- List 추가
- BFS
- C# Contains
- AddRange
- 알고리즘
- 호스트 주소
- list
- c# list
- 서브넷
- 서브넷 마스크
- C# Find
- list 사용법
- TCP/IP
- Parse 사용법
- 네트워크
- Tostring 사용법
- List 제거
- List 정렬
- 기본 게이트웨이
- 네트워크 용어
- DP
- C++
- IP주소
Archives
- Today
- Total
CodeLabs
[백준 / C#] 1260 : DFS와 BFS 본문
using System;
using System.Collections.Generic;
using System.Linq;
namespace _1260
{
class Program
{
static int n, m, v;
static int[] visited = new int[1001];
static int[,] arr = new int[1001, 1001];
static void DPS(int v)
{
Console.Write(v + " ");
visited[v] = 1;
for(int i=1; i<=n; i++)
{
if (visited[i] == 1 || arr[v, i] == 0)
continue;
DPS(i);
}
}
static void BPS(int v)
{
Queue<int> bps = new Queue<int>();
bps.Enqueue(v);
visited[v] = 0;
while(!bps.Count.Equals(0))
{
v = bps.First();
Console.Write(v + " ");
bps.Dequeue();
for(int i=1; i<=n; i++)
{
if (visited[i] == 0 || arr[v, i] == 0)
continue;
bps.Enqueue(i);
visited[i] = 0;
}
}
}
static void Solution()
{
DPS(v);
Console.WriteLine();
BPS(v);
}
static void Input()
{
int[] input = Console.ReadLine().Split().Select(int.Parse).ToArray();
n = input[0]; m = input[1]; v = input[2];
for(int i=0; i<m; i++)
{
input = Console.ReadLine().Split().Select(int.Parse).ToArray();
arr[input[0], input[1]] = arr[input[1], input[0]] = 1;
}
}
static void Solve()
{
Input();
Solution();
}
static void Main(string[] args)
{
Solve();
}
}
}
'백준 > 1000 ~' 카테고리의 다른 글
[백준 / C#] 1541 : 잃어버린 괄호 (0) | 2023.07.13 |
---|---|
[백준 / C#] 1463 : 1로 만들기 (0) | 2023.07.11 |
[백준 / C#] 1012 : 유기농 배추 (0) | 2023.07.06 |
[백준 / C#] 1003 : 피보나치 함수 (0) | 2023.07.03 |
[백준 / C#] 1074 : Z (0) | 2023.06.26 |