본문 바로가기

백준39

[백준 1764] 듣보잡(JAVA) https://www.acmicpc.net/problem/1764 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. 이름은 띄어쓰기 없이 영어 소문자로만 이루어지며, 그 길이는 20 이하이다. N, M은 500,000 이하의 자연수이다. www.acmicpc.net HashSet에 듣도 못한 사람을 넣어 놓고, 보도 못한 사람을 입력 받아 HashSet에 들어 있는 사람이면 ans에 넣어주었다. 사전순으로 출력하기 위해 sort한 다음 답을 출력했다. import java.io.BufferedReader; import java.io.In.. 2020. 3. 3.
[백준 1389] 케빈 베이컨의 6단계 법칙(JAVA) https://www.acmicpc.net/problem/1389 1389번: 케빈 베이컨의 6단계 법칙 첫째 줄에 유저의 수 N (2 ≤ N ≤ 100)과 친구 관계의 수 M (1 ≤ M ≤ 5,000)이 주어진다. 둘째 줄부터 M개의 줄에는 친구 관계가 주어진다. 친구 관계는 A와 B로 이루어져 있으며, A와 B가 친구라는 뜻이다. A와 B가 친구이면, B와 A도 친구이며, A와 B가 같은 경우는 없다. 친구 관계는 중복되어 들어올 수도 있으며, 친구가 한 명도 없는 사람은 없다. 또, 모든 사람은 친구 관계로 연결되어져 있다. www.acmicpc.net map배열을 만들고 친구 관계이면 1로 값을 변경해 주었다. 그 다음 bfs로 몇단계 거치는 지 확인하여 total배열에 저장한 후 답을 구했다... 2020. 3. 1.
[백준 14503] 로봇청소기(JAVA/C++) https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 벽 또는 빈 칸이다. 청소기는 바라보는 방향이 있으며, 이 방향은 동, 서, 남, 북중 하나이다. 지도의 각 칸은 (r, c)로 나타낼 수 있고, r은 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로 부터 떨어진 칸의 개수이다. 로봇 청소기는 다음 www.acmicpc.net 이전에 C++로 풀었던 문제이다. JAVA로 다시 풀어 보았다. C++로 풀었을 때는 bool f변수를 사용해서 종료 조건을 확인.. 2020. 3. 1.