본문 바로가기

알고리즘/SWEA60

[Java] SWEA 7272번 안경이 없어! SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 방법 1. contain() 사용해서 구멍이 하나도 없는 알파벳, 구멍이 하나만 있는 알파벳, 구멍이 두개 있는 알파벳을 갖고 있는 문자열에 포함여부를 판단해서 같은 문자열인지 파악하여 해결했습니다. 방법 2. replaceAll()을 사용하여 좀 더 간단한(?) 코드로 해결할 수 있었습니다. 코드 방법 1. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class S.. 2021. 2. 10.
[Java] SWEA 6485번 삼성시의 버스 노선 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 입력받은 버스노선이 모든 버스 정류장을 조사하면서 조건에 맞는지 검사하여 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution { public static int[] a; public static int[] b; public static int[] c; public static int[] answer; public static void main(String[] args) thr.. 2021. 2. 9.
[Java] SWEA 7227번 사랑의 카운슬러 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 각 좌표를 입력받고 두마리의 지렁이끼리 매칭되야하므로 조합을 사용하였습니다. 기저조건으로 전체 지렁이의 절반이 선택되면 선택된 지렁이들이 선택이 안된 지렁이들 방향으로 가게 되므로 선택된 지렁이들의 좌표는 더해주고 선택이 안된 지렁이들을 빼주어주면 벡터의 합을 구할 수 있습니다. 이때, 정답의 값은 int의 가장 큰 값을 초과할 수 있기 때문에 long형으로 처리하였고 이를 이용해서 벡터의 크기를 구하여 최소가 되는 값을 갱신하여 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.InputStreamRea.. 2021. 2. 8.
[Java] SWEA 6853번 직사각형과 점 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 직사각형의 안에있는 경우와 밖에있는 경우는 조건이 쉬우므로 if와 else if로 조건을 처리하였고 직사각형의 네 변 중 적어도 하나의 위에 있는 경우는 조건이 까다롭지만 문제에서 조건은 딱 3종류 이므로 else에 두어서 까다로운 조건을 그냥 받도록하여 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution { public static void main(String[] args.. 2021. 2. 6.
[Java] SWEA 4789번 성공적인 공연 기획 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 현재까지의 박수치는 사람들을 계속 갱신해가면서 만약 박수치기위한 사람이 모자라다면 고용된 사람은 현재까지 (박수치고 있어야되는 사람(배열에서의 i 번째)) - (현재까지 박수친 사람)을 하여 구했습니다. 또한, 현재까지 박수친 사람에 고용된 사람까지 포함해야 뒤에 남아있는 다른 사람들도 검사를 할 수 있으므로 고용자들을 추가하여 조건이 됬다고 가정하면 현재 i 명의 사람들이 현재 박수를 치고 있으므로 i명이 박수를 치고 있다면 박수를 칠 수 있는 사람들(배열[i])을 i명과 더해주어 현재까지 박수치는 사람의 수를 갱신하게하여 해결했습니다. 코드 import .. 2021. 2. 5.
[Java] SWEA 4371번 항구에 들어오는 배 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 우선, 입력받은 즐거운 날은 정렬이 되어있으므로 1일 부터 시작해서 각 즐거운 날마다의 주기를 구하였습니다. 그리고, 다음 인덱스 부터 전부 살펴보면서 해당 주기에 포함되는일이 있다면 입력받은 즐거운 날과 인덱스 크기가 동일한 boolean 타입의 check 배열을 사용해서 들어온 배가 주기에 해당한 배인지를 표시하였습니다. 이때, check가 true이면 이미 주기에 포함된 배가 들어온 것 이므로 다음 즐거운 날을 검사하도록 하였습니다. 코드 import java.io.BufferedReader; import java.io.InputStreamReader;.. 2021. 2. 3.