본문 바로가기

알고리즘219

[Java] SWEA 4261번 빠른 휴대전화 키패드 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 알파벳 소문자가 총 26개이므로 26개의 배열을 만들어 각각의 키패드 번호를 저장하여 입력받은 문자열과 키패드입력 순서가 같은지 비교하여 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution { public static int[] keypad = new int[26]; public static void main(String[] .. 2021. 2. 11.
[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.
[Python] 완주하지 못한 선수 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 풀이 참가자와 완주자들의 배열을 정렬하면 문자들의 순서가 동일하게 정렬되기 때문에 같은 인덱스에서 다른 문자가 나올 경우 완주하지 못한 선수로 하였고 반복문을 다 돌때까지 찾지못했다면 완주한 선수의 배열의 길이는 참가자의 배열의 길이 -1 이므로 결국 참가자의 맨 마지막 사람이 완주하지 못했다는 의미가 되어 완주하지 못한 선수를 구해 해결할 수 있었습니다. 파이썬을 배우면서 풀고있는 알고리즘문제이기 때문에 다른 사람들의 풀이를 보면서 coll.. 2021. 2. 7.
[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.