본문 바로가기

분류 전체보기233

[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.
[Python] 신규 아이디 추천 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 카카오계정개발팀에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. 네오에게 주어진 첫 업무는 새로 가 programmers.co.kr 풀이 파이썬의 정규표현식을 이용해서 문제에서의 2단계와 3단계를 쉽게 해결하여 풀 수 있었습니다. 파이썬은 공부하면 공부할수록 문제를 더 쉽게(?)풀 수 있는 매력적인 언어같습니다 코드 import re def solution(new_id): answer = '' # 알아서 알파벳만 소문자로 바꾸어 준다. # 1단계 new_id = new_id.lower() # 2단계 new_id = re.sub('[^a-z0-9-_.]', '', new_id) # 3단계 .. 2021. 2. 4.
[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.
[Java] SWEA 6019번 기차사이의 파리 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 파리의 이동거리만 구하면되는 문제입니다. 기차가 충돌하는데 걸리는 시간을 구한 후, 그 시간과 파리의 속력을 이용해서 파리의 이동거리를 구해 풀 수 있었습니다. 코드 import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for (int tc = 1; tc 2021. 2. 2.
[Java] SWEA 3376번 파도반 수열 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 예제의 1, 1, 1, 2, 2, 3, 4, 5, 7, 9를 잘 보면 a[i] (i > 3) = a[i - 2] + a[i - 3] 이라는 식을 만들 수 있습니다. 위의 식을 이용해 미리 배열에 결과를 구하고 해당 인덱스를 출력하는 식으로 해결했습니다. 이때, n = 100인 경우 결과 값이 888855064897 이므로 int형의 범위를 훨씬 뛰어넘게 됩니다. 때문에 int 형이 아닌 long 형으로 처리를 해야합니다. 코드 import java.util.Scanner; public class Solution { public static long[] arr.. 2021. 2. 1.