목록Algorithm (89)
Hayden's Archive
알고리즘 문제 출처 : 프로그래머스 https://programmers.co.kr/learn/courses/30/lessons/12916 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내가 작성한 코드 처음에는 String을 toLowerCase()를 통해 소문자로 모두 바꾸고 toCharArray()로 char[] 배열로 바꿨다. 그 뒤 char형을 String형으로 바꿔서 문자 "p"와 문자 "y"와 비교하였고 각각 countP와 countY에 저장하여 수를 비교해서 풀었다. class Solution { boolean solution(String s..
알고리즘 문제 출처 : 프로그래머스 https://programmers.co.kr/learn/courses/30/lessons/12903 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내가 작성한 코드 일단 String 타입 s의 길이를 구하여 길이의 반을 버림하고 리턴 타입이 double이므로 그 값을 int형으로 캐스팅한 후 half로 저장했다. 그 뒤 String 클래스의 charAt() 메소드를 사용하여 index 위치에 따른 value를 뽑아내서 char 타입 배열에 저장했고 이를 String 클래스의 생성자 인자값으로 받아서 answer에 저장..
알고리즘 문제 출처 : 프로그래머스 https://programmers.co.kr/learn/courses/30/lessons/12928 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내가 작성한 코드 약수를 구하는 거니까 나눠서 나머지가 0이 되는 데서 찾았다. 다른 사람들의 코드를 봤는데 다 비슷비슷했던 문제. class Solution { public int solution(int n) { int answer = 0; for(int i = 1; i < n + 1; i++){ if(n % i == 0) answer += i; } return answe..
알고리즘 문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/12919 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr String형 배열 seoul의 element중 Kim의 위치 x를 찾아, 김서방은 x에 있다는 String을 반환하는 함수, solution을 완성하세요. seoul에 Kim은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.제한 사항 seoul은 길이 1 이상, 1000 이하인 배열입니다. seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. Kim은 반드시 s..
알고리즘 문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/12922 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내가 작성한 코드 반복문을 쓰지 않고 풀 수 있는 방법이 없을까 고민해봤는데 방법을 찾지 못해서 for문을 돌려서 풀었다. 1부터 n까지 반복하면서 홀수일 때는 answer에 "수"를 더 하고 짝수일 때는 answer에 "박"을 더한다. class Solution { public String solution(int n) { String answer = ""; for(int i = 1; i
알고리즘 문제 출처 : 프로그래머스 https://programmers.co.kr/learn/courses/30/lessons/12912 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내가 작성한 코드 반복문을 돌릴까 생각도 했지만 수의 범위가 -10,000,000 이상 10,000,000 이하인 정수이고 넓은 범위가 걸리면 시간 복잡도가 높아질 것 같아서 반복문을 피하고자 했다. 따라서 가우스의 덧셈에 의해 1~n까지의 합을 n(n+1)/2 로 구할 수 있는 것에서부터 출발했다. a~b까지의 합은 1~b까지의 합에서 1~a까지의 합을 빼주고 더해주면 된..
반복문, 조건문, 2차원 배열을 활용하여 계단 모양, 모래시계 모양으로 숫자를 나열하였다. package workshop; public class Workshop1 { public static void main(String[] args) { System.out.println("문제 1)"); int [][] stair = {{1,2,3,4,5}, {6,7,8,9}, {10,11,12}, {13,14}, {15}}; // 계단 모양으로 화면에 출력될 2차원 배열 /* 테스트 2차원 배열 int [][] stair = {{1,2,3,4,5,6}, {7,8,9,10,11}, {12,13,14,15}, {16,17,18}, {19,20}, {21}}; */ for(int..
코드스테이츠 코플릿 문제 [4. 객체] 02_addProperty addProperty 함수를 작성하세요 파라미터로 객체와 키를 받는 addProperty 함수가 있습니다. 이 함수는 주어진 객체에, 키 이름으로 속성을 만들고 값을 true로 설정합니다. 내가 작성한 코드 function addProperty(obj, propertyName) { obj[propertyName] = true; return; } [4. 객체] 03_addPropertyAndValue addPropertyAndValue 함수를 작성하세요 파라미터로 객체와 키 및 새로운 값을 받는 addPropertyAndValue 함수가 있습니다. 이 함수는 주어진 객체에, 키 이름으로 속성을 만들고 값을 설정합니다. 내가 작성한 코드 fu..
코드스테이츠 코플릿 문제 [3. 배열 기초, 타입] 01_getType getType함수를 작성하세요. getType함수가 있습니다. 이 함수는 주어진 파라미터의 타입을 리턴합니다. Note: typeof 키워드는 값의 타입을 판단할 수 있는 키워드입니다. typeof를 이용해 배열의 타입을 확인하면, 'object'라고 나올 수 있습니다. 배열과 객체는 어떻게 구분할 수 있을까요? 배열과 객체를 구분하려면 Array.isArray 메소드를 사용하면 됩니다. 내가 작성한 코드 function getType(anything) { if (typeof anything === 'array' || typeof anything === 'object'){ if(Array.isArray(anything) === tru..