골드

알고리즘/백준

[BOJ] 1132 - 합 (Java)

접근법 각 알파벳이 어떤 수를 나타내야 가장 큰 수가 나오게 되는지를 확인하는 문제 충분히 그리디 알고리즘으로도 해결이 되는 문제. 각 알파벳마다 나오는 자릿수만큼을 모조리 더하면 가장 큰 수가 될 수 있는 경우들이 보이게 된다. 합이 높은 수에 높은 수를 배치하게 되면 가장 큰 수가 나올 수 있을 것이다. 문제는 제일 처음 0은 올 수 없다는 점으로 이 부분만 잘 처리해 주면 문제 해결은 어렵지 않다. 코드 package boj; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; public class BOJ_1132_합 { public sta..

알고리즘/백준

[백준] 2660-회장뽑기 [Python]

문제 2660번: 회장뽑기 입력의 첫째 줄에는 회원의 수가 있다. 단, 회원의 수는 50명을 넘지 않는다. 둘째 줄 이후로는 한 줄에 두 개의 회원번호가 있는데, 이것은 두 회원이 서로 친구임을 나타낸다. 회원번호는 1부터 www.acmicpc.net 문제 풀이 지인들 중 연결고리가 가장 긴 사람을 기준으로 그 길이로 점수를 매기고, 해당 점수가 가장 작은 사람을 회장 선출한다. 다익스트라 알고리즘으로 문제를 해결해도 될 것 같지만, 해당 문제의 입력 크기가 50으로 매우 작으므로 단순하게 그래프로 구현하여 bfs로 가장 연결고리가 긴 사람을 구했다. 코드 from collections import deque def bfs(graph,root,members): queue = deque([root]) fr..

DeveloperJason
'골드' 태그의 글 목록