코딩테스트

    [프로그래머스] 문자열 내림차순으로 배치하기

    문제 나의풀이 - 입력된 문자열을 반대로 출력하는 문제 - 일단 ""을 입력받은 문자열에서 빼서 새로운 배열로 저장 - 콜렉션을 이용 reverseOrder를 쓰면 뒤집혀서 나온다 - 뒤집어진 배열을 ""을 붙혀 answer에다 전달 실행결과

    [프로그래머스] 문자열 내 p와 y의 개수

    문제 나의풀이 - p와 y의 개수를 비교해 같으면 true 다르면 false를 리턴하는 문제 - 제일 기본으로 for문 4개를 돌려서 개수를 뽑아봤다 - 소문자 'y' 'p'때나 대문자 'Y' 'P'일때 - count / count2라는 변수를 만들어 y일때는 count2 p에는 count로 문자열에 있으면 1씩 증가하는 형태로 구현 - 조건식이 끝나면 count와 count2를 비교해 같으면 true 다르면 false를 리턴한다 실행결과

    [프로그래머스] 문자열 내 마음대로 정렬하기

    문제 나의풀이 - 문자열로 구성된 배열에서 정수 n이 주어지면 문자역의 인덱스 n번째 글자를 가져와서 오름차순으로 정렬하는 문제 - 배열에서 값을 찾기 위해 ArrayList를 사용했다. - ArrayList는 조회하기는 빠르지만 값을 수정하거나 삭제하기에는 LinkedList가 더 효율적이다 - 반환할 배열 answer의 길이는 strings배열과 같으므로 strings.length로 지정한다. - n번째문자를 기존 문자열에 붙여 만든 새로운 문자열을 넣을 ArrayList를 생성한다. - strings의 길이만큼 반복문을 사용해 새로운 문자열(strings[i].charAt(n) + strings[i])을 넣어준다. (ex) sun -> usun, car -> acar) - Collections.so..

    [프로그래머스] 두 정수 사이의 합

    문제 나의풀이 - 두 정수 a와 b를 비교해 속한 모든 정수의 합을 구하는 문제 - if문으로 두가지의 조건을 줬다 a가 b보다 클 경우 / b가 a보다 클 경우 - b가 a보다 크면 시작 숫자를 a라고 하고 b와 같거나 작을때까지 for문을 돌리면서 answer에다가 해당 모든 정수를 더해준다 - else if로 a가 b보다 클 경우를 똑같이 방법으로 작성한다 실행결과

    [프로그래머스] 같은 숫자는 싫어

    문제 나의풀이 실행결과

    [프로그래머스] 가운데 글자 가져오기

    문제 나의풀이 - String s에 문자열을 가져와 split으로 ""를 없애주고 String배열로 만들어줬다 - 그 String 배열 arr의 길이가 만약 짝수라면, for문을 돌리면서 i가 가운데 글자가 맞다면 그 글자와 +1한 글자를 가져와서 answer에다가 넣어준다 - +1을 왜 했냐면 글자가 짝수라면 가운데 글자는 하나가 아니라 두개이기 때문 - 홀수라면 2로 나누어서 가운데 글자를 가져온다 실행결과

    [프로그래머스] 2016년

    문제 나의 풀이 실행결과

    [프로그래머스] K번째 수

    문제 나의 풀이 실행결과

    [프로그래머스] 모의고사

    문제 나의풀이 실행결과

    [프로그래머스] 완주하지 못한 선수

    문제 나의풀이 설명 -> 참여자와 완주자를 비교해서 완주를 못한 참여자를 뽑아내야 되므로 Map으로 각 참여자와 완주자를 Key값으로 만들기 위해 Map을 사용 -> 첫번째 for 문으로 참여자 길이만큼 계속 돌면서 map에 참여자가 없으면 참여자와 1이라는 숫자를 value값으로 저장 -> 같은 이름을 가진 참여자가 있을 수도 있으니 이름이 null값이 아니면 그 map에다 이름을 저장하면서 같은 이름의 참여자의 value값 즉, 1을 가져와서 1을 더한 값을 저장한다 그럼 같은 이름을 가지고 있으면 2가 value 값 -> 첫번째 for 문이 끝나면 두 번째 for문에서 이제 완주자를 참여자처럼 map에다가 저장 -> map.forEach 문으로 순회하면서 map에 있는 각 원소들을 가져와 만약 홀수..