전체 글

알고리즘 문제/프로그래머스

프로그래머스 0 단계 7의 개수 - JAVA

문제 설명 머쓱이는 행운의 숫자 7을 가장 좋아합니다. 정수 배열 array가 매개변수로 주어질 때, 7이 총 몇 개 있는지 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ array의 길이 ≤ 100 0 ≤ array의 원소 ≤ 100,000 문제풀이 import java.util.Arrays; class Solution { public int solution(int[] array) { return (int) Arrays.stream(array) .mapToObj(String::valueOf) .flatMapToInt(str -> str.chars()) .filter(c -> c == '7') .count(); } } https://school.programmers.co.kr/..

알고리즘 문제/프로그래머스

프로그래머스 0 단계 캐릭터의 좌표-java

문제 설명 머쓱이는 RPG게임을 하고 있습니다. 게임에는 up, down, left, right 방향키가 있으며 각 키를 누르면 위, 아래, 왼쪽, 오른쪽으로 한 칸씩 이동합니다. 예를 들어 [0,0]에서 up을 누른다면 캐릭터의 좌표는 [0, 1], down을 누른다면 [0, -1], left를 누른다면 [-1, 0], right를 누른다면 [1, 0]입니다. 머쓱이가 입력한 방향키의 배열 keyinput와 맵의 크기 board이 매개변수로 주어집니다. 캐릭터는 항상 [0,0]에서 시작할 때 키 입력이 모두 끝난 뒤에 캐릭터의 좌표 [x, y]를 return하도록 solution 함수를 완성해주세요. [0, 0]은 board의 정 중앙에 위치합니다. 예를 들어 board의 가로 크기가 9라면 캐릭터는 ..

알고리즘 문제/이론

구현(Implementaion)

풀이를 떠올리는 것은 쉽지만 소스코드로 옮기기 어려운 문제 지칭합니다. 구현 유형 예시 알고리즘은 간단한데 코드가 지나칠 만큼 길어지는 문제 실수 연산을 다루고, 특정 소수점 자리까지 출력해야하는 문제 문자열을 특정 기준에 따라 끊어 처리해야 하는 문제 적절한 라이브러리를 찾아서 사용해야하는 문제 시물레이션 및 완전 탐색 문제어서는 2차원 공간에서의 방향 벡터가 자주 활용 상하좌우 이때 여행가 A가 NxN 크기의 정사각형 공간을 벗어나는 움직임은 무시된다. 예를 들어 (1,1)의 위치에서 L 혹은 U를 만나면 무시된다. 다음은 N=5인 지도와 계획서이다. 계획서 : R -> R -> R -> U -> D -> D 이 경우 6개의 명령에 따라서 여행가가 움직이게 되는 위치는 순서대로 (1,2), (1,3)..

알고리즘 문제/프로그래머스

프로그래머스 0단계 문자열 정렬하기 (2) - java

문제 설명 영어 대소문자로 이루어진 문자열 my_string이 매개변수로 주어질 때, my_string을 모두 소문자로 바꾸고 알파벳 순서대로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요. 제한사항 0

알고리즘 문제/프로그래머스

프로그래머스 0단계 문자열안에 문자열- java

문제 설명 문자열 str1, str2가 매개변수로 주어집니다. str1 안에 str2가 있다면 1을 없다면 2를 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ str1의 길이 ≤ 100 1 ≤ str2의 길이 ≤ 100 문자열은 알파벳 대문자, 소문자, 숫자로 구성되어 있습니다. 문제풀이 class Solution{ public int solution(String str1, String str2) { int n = str1.length(); int m = str2.length(); for (int i = 0; i str1.regionMatches(i, str2, 0, str2.length())) .findFirst() .isPresent(); return result ? 1 : ..

알고리즘 문제/프로그래머스

프로그래머스 0 단계 자릿수 더하기-java

문제 설명 정수 n이 매개변수로 주어질 때 n의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요 제한사항 0 ≤ n ≤ 1,000,000 문제풀이 import java.util.*; class Solution { public int solution(int n) { int answer = 0; String[] s = String.valueOf(n).split(""); for(int i =0; i< s.length; i++){ answer += Integer.parseInt(s[i]); } return answer; } } 1. n를 String.valueOf() 메소드로 문자열로 반환후 split() 메소드로 공백기준으로 나누어서 s String배열에 넣는다. 2. s 배열길이 ..

알고리즘 문제/프로그래머스

프로그래머스 0 단계 n의 배수 고르기-java

문제 설명 정수 n과 정수 배열 numlist가 매개변수로 주어질 때, numlist에서 n의 배수가 아닌 수들을 제거한 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 10,000 1 ≤ numlist의 크기 ≤ 100 1 ≤ numlist의 원소 ≤ 100,000 문제풀이 import java.util.*; class Solution { public int[] solution(int n, int[] numlist) { int[] answer = Arrays.stream(numlist).filter(value -> value %n ==0).toArray(); return answer; } } 1. Arrays.stream 메소드는 배열을 스트림으로 변환하여 2.fi..

알고리즘 문제/프로그래머스

프로그래머스 0 단계 숫자 찾기-java

문제 설명 정수 num과 k가 매개변수로 주어질 때, num을 이루는 숫자 중에 k가 있으면 num의 그 숫자가 있는 자리 수를 return하고 없으면 -1을 return 하도록 solution 함수를 완성해보세요 제한사항 0 < num < 1,000,000 0 ≤ k < 10 num에 k가 여러 개 있으면 가장 처음 나타나는 자리를 return 합니다. 문제풀이 import java.util.*; class Solution { public int solution(int num, int k) { int answer = 0; String[] arr = String.valueOf(num).split(""); for(int i =0; i < arr.length; i++){ if(arr[i].equals(Str..

가끔개발
가끔쓰는개발블로그