프로그래머스문제정리 & Python잡다한것

프로그래머스[Python] - 최댓값과 최솟값, 최솟값 만들기, 행렬의 곱셈, N개의 최소공배수

Jay x 2 2021. 7. 28. 23:30
728x90
반응형

최댓값과 최솟값

문제 url : https://programmers.co.kr/learn/courses/30/lessons/12939

 

코딩테스트 연습 - 최댓값과 최솟값

문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를

programmers.co.kr

문제 내용 : 문자열 s에 공백으로 숫자들이 구분되어 있다고 한다. 이때 이 숫자들 중 가장 큰 수와 가장 작은 수를 출력하라

알고리즘 : 단순 구현

최솟값 만들기

문제 url : https://programmers.co.kr/learn/courses/30/lessons/12941

문제 내용 : 길이가 같은 두 배열 A, B가 있다. 각자 하나의 숫자를 뽑아, 서로 곱해서 누적해 나간다. 이때, 누적된 값이 가장 작아야한다.

알고리즘 : 단순 구현

풀이과정 : 자연수이기 때문에 음수를 고려할 필요가 없다. 누적이 가장 작으려면 큰수와 작은 수를 곱해야 한다. 하나를 순서대로 정렬하고, 나머지 하나는 거꾸로 정렬해서 처음부터 순서대로 곱해서 구하면 된다.

행렬의 곱셈(기본적인 문제)

문제 url : https://programmers.co.kr/learn/courses/30/lessons/12949

 

코딩테스트 연습 - 행렬의 곱셈

[[2, 3, 2], [4, 2, 4], [3, 1, 4]] [[5, 4, 3], [2, 4, 1], [3, 1, 1]] [[22, 22, 11], [36, 28, 18], [29, 20, 14]]

programmers.co.kr

문제 내용 : 두 이차원 행렬(arr1, arr2)의 곱 결과 행렬을 구하라.

제한 조건

  • 행렬 arr1, arr2의 행과 열의 길이는 2 이상 100 이하입니다.
  • 행렬 arr1, arr2의 원소는 -10 이상 20 이하인 자연수입니다.
  • 곱할 수 있는 배열만 주어집니다.

알고리즘 : 단순 구현

풀이 과정 : 사실 알고리즘은 단순하다. 하지만 다시 생각해 봐야할 것을 정리한다.

  1. 초기 배열을 세울때는(아래 answer같은경우, DP 문제같은경우) 행과 열의 갯수를 확실히 하고 가자 → 앞에가 열(k)이고 뒤에가 행(n)이다.
  2. 우선 공책에 행렬(배열)을 그리고 나서 인덱스를 확인하고 이를 가지고 for문을 돌리면 더 쉽게 풀 수 있음

N개의 최소공배수(LCM)

문제 url : https://programmers.co.kr/learn/courses/30/lessons/12953

 

코딩테스트 연습 - N개의 최소공배수

두 수의 최소공배수(Least Common Multiple)란 입력된 두 수의 배수 중 공통이 되는 가장 작은 숫자를 의미합니다. 예를 들어 2와 7의 최소공배수는 14가 됩니다. 정의를 확장해서, n개의 수의 최소공배

programmers.co.kr

문제 내용 : N개의 수들의 최소 공배수를 구하라.

알고리즘 : 단순 구현(최소 공배수)

반응형