코딩 테스트 문제/프로그래머스

    프로그래머스 Level 3 자바스크립트 야근지수 연습문제

    프로그래머스 Level 3 자바스크립트 야근지수 연습문제

    처음으로 올리는 3단계 문제네요 ㅎㅎ 3단계 치고는 굉장히 쉬운 문제같습니다 남은 작업량들을 제곱해서 더해주는 부분을 생각하며 조금 생각하니 쉽게 답을 알 수 있었습니다 저 부분이 없다면 그냥 앞에서부터 퇴근까지 남은 시간만큼 써가면 지워주면 그걸로 끝이겠지만 전체적으로 평탄화? 를 시켜줘야 최소값을 구할 수 있습니다 먼저 n 값을 카피해서 works의 값 전부를 빼더라도 0보다 크면 0을 리턴 해주도록 합니다 그래도 안 끝난다면 내림차순으로 정렬 해줍니다 그리고 while 문을 열어서 len에 works의 길이를 cur에 가장 앞에 있는 값을 넣어줍니다 그리고 내부의 for문에서 1부터 시작을 해주어 다른 값이 나오는 인덱스를 찾아줍니다 그리고 그 인덱스까지만 값을 1씩 빼줍니다! 그러면 값을 이런식으..

    프로그래머스 Level 2 자바스크립트 두 원 사이의 정수 쌍 연습문제

    프로그래머스 Level 2 자바스크립트 두 원 사이의 정수 쌍 연습문제

    HTML 삽입 미리보기할 수 없는 소스 따끈따근한 문제네용 처음에는 어찌 풀지 막막했지만 추측을 통해 원하는 공식을 찾아내어 풀 수 있었습니다! 풀이입니다 처음에 메인 변수들을 만들어줍니다 Math.pow 같은 경우엔 앞의 수를 뒤에 수만큼 제곱 시켜주는 함수입니다 반지름의 제곱보다 x와 y 좌표를 각각 제곱시킨 값을 더한 값이 작을 경우 원 안에 있다고 판단할 수 있습니다 반지름이 5인 경우부터 원에 겹치는 부분이 나오는데 이부분을 계산 해보면 5의 제곱인 25와 해당 좌표인 4의 제곱 + 3의 제곱 (16+9) 와 같습니다 이러한 공식으로 이런 로직을 짤 수 있습니다 가장 윗 부분인 큰 원에 닿는 부분과 안쪽 원에 닿는 부분을 구해줍니다 그리고 그 사이를 answer로 더해주면 되겠죠? 가장 아래부분..

    프로그래머스 Level 2 자바스크립트 혼자서 하는 틱택토 연습문제

    프로그래머스 Level 2 자바스크립트 혼자서 하는 틱택토 연습문제

    정답률이 낮은 편이라 좀 어려울 줄 알았는데 생각보다 쉽게 풀렸네요! 역시 복잡하게 생각해서 좋을 건 없는 것 같습니다 그냥 단순무식하게 조건을 하나하난 추가 해나가니 정답이 됐습니다 풀이입니다 첫번째 조건입니다 count 함수를 통해서 O,X의 갯수를 세어주고 절대값으로 두 갯수의 차이가 1 초과하거나 X가 O보다 많으면 0을 리턴 해줍니다 위 조건을 통과 했다? 그럼이제 O,X가 세개가 이어진 경우들을 찾아줍니다 단순하고 직관적이게 경우를 탐색 해줍니다 ㅎㅎㅎㅎㅎㅎ 그리고 조건들을 하나하나 추가 해줍니다 두 수가 같을 경우 Odone이 0보다 크면 게임이 이미 끝났는데 X를 또 쓴 거겠죠? 그리고 당연히 둘 다 0보다 큰 상황이면 안 되구요 그리고 cnt가 서로 같을 때 Odone이 존재해도 안 되고..

    프로그래머스 Level 2 자바스크립트 가장 큰 수 정렬

    프로그래머스 Level 2 자바스크립트 가장 큰 수 정렬

    즐거운 정렬 문제입니다 이런 류의 문제에 약했었는데 어느새 풀 수 있게 되었네요 딱히 뭘 공부한 건 아닌데 시간이 지남에 따라서 무의식이 뇌내의 지식을 알아서 정리하고 취합한다고 하던데 맞을지도??? 박사님들이 그렇다니까 그렇겠죠 풀이입니다 먼저 가장 끝 수를 기준으로 정렬을 해줍니다 왜 했는지는 기억이 안 납니다만 이제와서 저걸 빼니 패스를 못 하네요 ㅎㅎ 배열을 만들어서 첫번째 자리에 있는 수를 인덱스로 사용해서 각 배열마다 push를 해줍니다 그러면 이런식으로 머리가 같은 녀석들끼리 묶이게 됩니다 그리고 배열을 한 번 까꾸로 뒤집어줍니다 9부터 탐색할 수 있게용 그리고 이제 배열을 탐색 해줍니다 그리고 이제 숫자 배열들 마다 정렬을 또 한 번 해줍니다 변수들의 길이가 4 미만인 경우 그 뒤에 30인..

    프로그래머스 Level 2 자바 위장 해시

    프로그래머스 Level 2 자바 위장 해시

    이 문제의 주제가 해시인 이유는 문제 자체에서 의상의 종류가 어떤 것들이 있는지 명시가 되어있지 않기 때문입니다! 옷의 타입을 키값으로 타입별 갯수를 기록 해주면 됩니다 먼저 해시맵과 ArrayList를 만들어줍니다 Arr은 이름들을 담아주고 Nums는 갯수들을 담아줄 겁니다 이제 배열을 받아와서 키와 값을 정해줍니다 그리고 해시맵에 저장되어있는 갯수들을 가져와서 Nums에 넣어주고요 경우의 수 계산하는 법을 찾다보니 이런 좋은 수식이 있는 줄 처음 알았네요... 진작 알았다면 지금까지 다른 문제들에서 고생한 것들은... 아무것도 아니었을텐데요 ㅎㅎㅎㅎㅎ 감사합니다!

    프로그래머스 Level 2 자바스크립트 이모티콘 할인행사 2023 KAKAO BLIND RECRUITMENT

    프로그래머스 Level 2 자바스크립트 이모티콘 할인행사 2023 KAKAO BLIND RECRUITMENT

    저는 이런문제 참 싫어합니다... 모든 경우를 탐색하는 경우의 문제를요 풀이입니다 먼저 재귀함수를 실행해서 모든 할인의 경우를 배열에 담아줍니다 이 코드같은 경우 빠른 풀이를 위해서 타 블로그에서 따온 코드임을 알려드립니다 함수를 실행해서 arrs에 담아주고 best plus 가입자를 뜻하는 bp와 best cash 수익을 뜻하는 bc를 만들어줍니다 그리고 for문을 열어서 arrs에서 Case를 하나씩 가져오고 Case마다 플러스 가입자와 수익이 얼마인지 확인을 해줍니다 그 중에서 bp가 최고인 경우를 넣어주면서 현재 bp랑 같은 plus가 오면 수익을 비교해주고 수익이 더 큰 경우를 판별 해주면 되겠습니다! 감사합니다!