Algorithm/Programmers

Algorithm/Programmers

프로그래머스 LV0 합성수 찾기

문제 https://school.programmers.co.kr/learn/courses/30/lessons/120846 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 자연수 n이 주어질 때, n이하의 합성수의 개수를 반환하는 문제이다. 합성수는 약수의 개수가 3개 이상인 수 이므로 for문을 걸어 처리할 때, 약수의 개수가 3 이상이 되면 for문을 빠져나오는 식으로 코드를 작성했다. def solution(n): answer = 0 for i in range(1, n + 1): cnt = 0 for j in range(1, i + 1): if i..

Algorithm/Programmers

프로그래머스 LV0 수 조작하기 2

문제 https://school.programmers.co.kr/learn/courses/30/lessons/181925 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 정수 배열이 주어지게 해당 정수배열과 조건에 맞는 배열을 만들어 반환하는 문제이다. 딱히 어려움 없이 조건에 맞게 구현만 하면 되는 문제이다. def solution(numLog): answer = [] start = numLog[0] for i in numLog[1:]: if start + 1 == i: answer.append("w") elif start - 1 == i: answ..

Algorithm/Programmers

프로그래머스 LV0 가까운 1 찾기

문제 https://school.programmers.co.kr/learn/courses/30/lessons/181898 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 정수 배열 arr와 idx가 주어질 때, idx보다 크면서 배열의 값이 1인 가장 작인 인덱스를 반환하는 함수를 작성하는 문제이다. 문제를 해결하기 전에 조건을 보면 "idx보다 크면서 배열의 값이 1인 가장 작은 인덱스를 찾아서 반환하라"라는 조건이 있는데 테스트 케이스에 직접 코드를 넣어보면 이문제는 "idx보다 크거나 같은 배열의 값이 1인 가장 작인 인덱스를 찾아 반환" 해야 ..

Algorithm/Programmers

프로그래머스 LV0 특별한 이차원 배열2

문제 https://school.programmers.co.kr/learn/courses/30/lessons/181831 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 배열 arr이 매개변수로 주어 질 때, arr이 arr [i][j] == arr [j][i]을 만족한다면 1을 아니라면 0을 반환하는 함수를 작성하는 문제이다. 특별한 이차원 배열 1 문제와는 다르게 그냥 배열을 순회하면서 다른 부분이 있다면 즉각적으로 0을 반환하고 아니면 1을 반환하는 형식으로 문제를 해결하면 된다. def solution(arr): for i in range(le..

Algorithm/Programmers

프로그래머스 LV0 잘라서 배열로 저장하기

문제 https://school.programmers.co.kr/learn/courses/30/lessons/120913 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 my_str과 n이 매개변수로 주어질 때, my_str을 길이 n씩 잘라서 저장한 배열을 구하는 문제이다. 우리가 일반적으로 파이썬에서 리스트에 있는 값에 접근할 때에는 list [a]처럼 인덱스에 접근하여 값을 찾곤 한다. 하지만 이렇게 접근하게 되면 리스트 밖의 인덱스에 접근할 때 오류를 반환하게 된다. 하지만 이를 우회적으로 해결할 수 있는 문제가 있는데 바로 리스트 슬라이싱 기..

Algorithm/Programmers

프로그래머스 LV0 특별한 이차원 배열1

문제 https://school.programmers.co.kr/learn/courses/30/lessons/181833 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 정수 n이 매개변수로 주어질 때, 다음과 같은 n x n 크기의 이차원 배열을 구하는 함수를 작성하는 문제이다. 규칙성을 찾아서 n일 때마다 원소가 1로 바뀌는 것을 주의해서 함수를 작성한다. def solution(n): answer =[] for i in range(n): temp = [] element = [0] * n element[i] = 1 temp.append(elemen..

Algorithm/Programmers

프로그래머스 LV0 세 개의 구분자

문제 https://school.programmers.co.kr/learn/courses/30/lessons/181862 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 a, b, c 구분다를 이용해 문자열을 나눈 리스트를 구하는 문제이다. 문자의 조건에 대한 문제는 정규표현식을 이용하면 쉽게 해결 할 수 있으나 정규표현식의 러닝커브가 생각 보다 가파르기 때문에 이를 제외하고 replace함수를 이용하여 문제를 해결하였다. def solution(myStr): myStr = myStr.replace("a", " ").replace("b", " ").r..

Algorithm/Programmers

프로그래머스 LV0 가까운 수

문제 https://school.programmers.co.kr/learn/courses/30/lessons/120890 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 정수 배열 array, 정수 n이 주어질 때, array에 들어있는 정수 중에서 n과 가장 가까운 수를 반환하는 문제이다. 나 같은 경우 case 리스트를 만들어 array배열을 순회하면서 array배열의 요소와 n을 뺀 값의 절대값한 값들을 모은 다음 그 중에서 제일 적은 수의 인덱스를 찾아 array에 그대로 대입하여 문제를 해결 하였다. 해당 문제를 해결하기 위해서는 가장 가까운..

Algorithm/Programmers

프로그래머스 LV0 k의 개수

문제 https://school.programmers.co.kr/learn/courses/30/lessons/120887 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 정수 i, j, k 가 주어질때 i부터 j까지 k가 몇 번 등장하는지 값을 구하는 문제이다. i, j+1 까지 순회하면서 해당 숫자를 문자열로 변환하고 그 문자열안에서 k의 갯수들의 합을 구하면 문제를 해결 할 수 있다. def solution(i, j, k): count = 0 for num in range(i, j + 1): count += str(num).count(str(k))..

JHeaon
'Algorithm/Programmers' 카테고리의 글 목록