본문 바로가기

전체보기178

[프로그래머스] 교점에 별 만들기 처리조건 더보기 https://programmers.co.kr/learn/courses/30/lessons/87377 풀이 아래 참고사항을 보면 이처럼 교점이 존재하는 경우와 두직선이 평행하거나 일치하는 조건을 알려준다. line으로 받은 배열은 A B E와 C D F를 각각 조합할 수 있다.for문을 돌려 첫 인덱스와 이중for문으로 첫인덱스+1한 값 부터 차례로 끝가지 검사하고 검사할 때마다 기준 인덱스와 비교할 인덱스에서 각각 a, b, e를 그리고 c, d, f를 추출하여 평행하는지 아닌지 값을 slope라는 변수에 담아주었다. 그리고 x와 y값을 slope를 이용해 찾아주고 slope가 0이 아닌 경우 x와y를 정수인지 확인해 둘다 정수 인경우에만 최대x,y 최소 x,y를 계속해서 바꾸어준다. .. 2022. 3. 29.
[프로그래머스] 구명보트 처리순서 더보기 https://programmers.co.kr/learn/courses/30/lessons/42885 풀이 처음에는 people배열을 받아서 sort로 낮은수부터 높은수까지 정렬 오름차순 정렬을 해서 가장작은값부터 순서대로 넣었는데 가장 작은 값과 가장큰값을 비교해서 넣어줘야 최소한의 구명보트를 조합할 수 있다. 가장 큰값과 가장 작은 값을 더해서 받은 limit보다 작거나 같다면 보트에 실어 보낼 수 있다. 그렇지 않다면 다음값인 70과 가장 작은 값 50을 똑같이 더해본다. 만약 처음부터 둘의 합이 조건에 만족한다면 그안쪽으로 한칸씩 이동시켜 안에 두번째로 가장큰 값과 두번째로 가장 작은값을 비교하게 된다. 이 문제는 어떻게 최소한의 구명보트수를 계산할 것인가를 통해 어떻게 비교 덧셈.. 2022. 3. 28.
[프로그래머스] 영어 끝말잇기 처리조건 더보기 https://programmers.co.kr/learn/courses/30/lessons/12981 풀이 이미 사용한 단어는 useWord2에 담아주며 새 단어를 받을 때 마다 useWord2에 속한 단어인지 확인한 뒤 자신의 단어 맨 앞과 이전사람이 뱉은 단어의 뒤가 일치 한다면useWord2에 담아준다. for문을 돌릴 것인데 i가 0이라면 아무 단어도 아무 제약도 없으니 그냥 useWord2에 담아준다. i가 1 이상이라면 위 if문으로 처리하고 만약 useWord2에 있는 단어가 또 들어가려한다거나, 자신의 앞단어가 이전 사람이 뱉은 단어 맨 뒤랑 같지 않다면 현재 순서와 자신의 번호를 리턴한다. 만약 리턴없이 for문이 끝나면 아무 문제 없는 게임이므로 [0,0]을 리턴한다. .. 2022. 3. 28.
우선권에 따라 선수 데려가기 조건 powers로 각 선수들의 힘(1 2022. 3. 27.
[프로그래머스] 2개 이하로 다른 비트 처리조건 더보기 https://programmers.co.kr/learn/courses/30/lessons/77885 풀이 numbers배열을 입력받고 for문으로 풀어서 각 number을 calc라는 함수로 보내서 number를 기준으로 1씩 숫자를 올리며 기준숫자인 number와 +1올린 숫자를 베타논리연산으로 비교하여 나온 값을 다시 2진수로 바꿔 각 비트를 배열로 만들어 다시 for로 풀어주면서 해당 숫자가 1인경우 number와 +1한 number의 차이로 그때마다 count를 올리다가 3이상 되면 종료해버리고 아니라면 숫자끝까지 검사해서 for문 종료와 동시에 count가 2이하이면 break하면서 현재 start를 리턴해주게 된다. 예를 들어 number가2고 +1한게 3이라면 둘을 베타논리.. 2022. 3. 25.
[프로그래머스] 삼각 달팽이 처리 조건 더보기 https://programmers.co.kr/learn/courses/30/lessons/68645 풀이 달팽이가 위에서부터 도는 모양을 생각해보자 위에서부터 n만큼 내려가고 n-1만큼 오른쪽으로가고 n-2만큼 위로 다시 올라가며 빙글빙글 돌게된다. 반복없이 여기까지만 구해본다면 맨위부터 n만큼 배열을 만들어 내부에서 일치하는 인덱스에 값을 담아줘야한다. count는 들어갈 숫자로 0부터 시작하게되며 x=-1 y=0으로 왼쪽부터 대각선으로 내려가는 for문을 돌린다. 0부터 4전까지 x축을올리며 count를 올리며 할당해준다. 맨아래에서 오른쪽으로 가는 for문을 돌린다. n-1인 0부터 3전까지 돌리게 되며 x는 그대로두고 y축을 +1해주면서 count++를 하며 값을 저장시킨다. .. 2022. 3. 25.