JavaScript45 [테스트] 230622 알고리즘 테스트 풀이 - Chapter 2 1. 하 문제 - 문자열 뒤집어서 순서대로 더하기 function solution(n) { let nums = String(n).split("").reverse(); let sum = 0; let result = ""; nums.forEach((e, i) => { result += e; sum += Number(e); if (i < nums.length - 1) result += "+"; else result += "="; }); return result + sum; } console.log(solution(718253)); 로직 1. 입력받은 숫자를 문자열로 바꾸어 문자 하나별로 나눠주고, reverse를 사용해 문자열을 앞뒤로 뒤집어 준 뒤 nums라는 새로운 배열로 저장합니다. 2. 덧셈 결과를 저.. 2023. 6. 23. [스터디] Week 1 - 2 (230620) 사담 나는 스터디에서 진행하는 바닐라JS 강의를 약 2년 전에 챌린지를 통해 수강했던 경험이 있다. 평소에도 노마드코더 강의를 좋아해서 유료 강의도 결제해서 들었었다. 그래서 스터디에서 해당 강의로 진행하려고 하신다는 소식에 내심 반가웠다. 2년 전에 들을 당시에는 자바스크립트에 대해 아무것도 모르던 상태여서 이해하지 못하고 지나간 기억도 많았고, 무엇보다 다 까먹어버렸기 때문이다... 들어봤으니 적절한 진도도 조정할 수 있었고, 처음 하시는 스터디 조원분들께 조금이나마 도움도 드릴 수 있을것같아 좋았다. 이제 보니 시간이 메모장 기록이 전부 새벽이라 웃기다 ㅋㅋㅋㅋㅋ 저 때는 블로그나 노션에 기록할 생각도 못 해서 메모장에 기록해뒀던 기억이 난다. 아래 파일은 챌린지를 하며 기록했던 정리들인데 블로그에.. 2023. 6. 20. [스터디] Week 1 - 스터디 발제 (230619) 리액트 주특기 분들과 함께 캠프 공식 일정과 별개로 스터디를 진행하기로 하였다👏👏👏 그래서 개인 스터디에서 진행한 내용이나 강의 내용 정리 등을 기록해보려 한다. 우리 스터디에서는 우선 이번주 월~토 까지 노마드 코더의 ' 바닐라JS로 크롬 앱 만들기 ' 클론코딩 강의를 완강하고, 클론코딩 결과물을 가져오기로 했다. https://nomadcoders.co/javascript-for-beginners 프로그래밍 기초주차를 통해 배웠던 자바스크립트 기초를 활용해보기 위해 해당 강의를 선택했다. 이번주 금요일에는 이제 주특기 주차가 발제되는데 주특기 주차 발제 후에는 또 다른 계획을 짜서 스터디를 진행할 계획이다. 아래는 조원분들과 함께 짠 노션 계획표의 일부다. 대략적인 시간표와 참여 규칙, 강의 수강 일.. 2023. 6. 20. [프로그래머스] 이상한 문자 만들기 (JavaScript) [프로그래머스] 이상한 문자 만들기 (JavaScript) https://school.programmers.co.kr/learn/courses/30/lessons/12930# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr https://school.programmers.co.kr/learn/courses/14743/14743-%EC%BD%94%EB%94%A9%ED%85%8C%EC%8A%A4%ED%8A%B8-%EC%97%B0%EC%8A%B5-%ED%9E%8C%ED%8A%B8-%EB%AA%A8%EC%9D%8C%EC%A7%91?itm_content=lesson.. 2023. 6. 20. [프로그래머스] 로또의 최고 순위와 최저 순위 (JavaScript) [프로그래머스] 로또의 최고 순위와 최저 순위 (JavaScript) https://school.programmers.co.kr/learn/courses/30/lessons/77484# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. includes() 사용 풀이 (풀이 참고) function solution(lottos, win_nums) { let rank = [6, 6, 5, 4, 3, 2, 1]; let zero = 0, match = 0; lottos.forEach((e) => { if (e === 0) zero++; else if (win_.. 2023. 6. 20. [TIL] 230619 - 프로그래머스 문제 풀이 오늘 한 것 - 프로그래머스 챌린지 문제 풀이 3진법 뒤집기, 최소 직사각형, 같은 숫자는 싫어, 두 개 뽑아서 더하기, 로또의 순위 - 스터디 계획 세우기 2023.06.20 - [알고리즘/프로그래머스] - [프로그래머스] 로또의 최고 순위와 최저 순위 (JavaScript) [프로그래머스] 로또의 최고 순위와 최저 순위 (JavaScript) [프로그래머스] 로또의 최고 순위와 최저 순위 (JavaScript) https://school.programmers.co.kr/learn/courses/30/lessons/77484# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개 jwc406.tistory.com 2023. 6. 20. [과제] 야구게임 (JavaScript) - Chapter 1 과제 안내 💡Goal : 숫자야구 프로그램 만들기 4인1팀에서 페어로 2인1팀으로 과제를 진행합니다. (5명 팀일 경우 2인1팀/3인1팀) 간단한 숫자야구 프로그램을 Java/JS로 만들어봅니다. 조건문, 반복문을 활용하여 해결합니다. 💡To do : 과제 조건 컴퓨터는 0과 9 사이의 서로 다른 숫자 3개를 무작위로 뽑습니다. (ex) 123, 759 사용자는 컴퓨터가 뽑은 숫자를 맞추기 위해 시도합니다. 컴퓨터는 사용자가 입력한 세자리 숫자에 대해서, 아래의 규칙대로 스트라이크(S)와 볼(B)를 알려줍니다. 숫자의 값과 위치가 모두 일치하면 S 숫자의 값은 일치하지만 위치가 틀렸으면 B 기회는 무제한이며, 몇번의 시도 후에 맞췄는지 기록됩니다. 숫자 3개를 모두 맞춘 경우, 게임을 종료합니다. 💡진행.. 2023. 6. 19. [프로그래머스] 나누어 떨어지는 숫자 배열 (JavaScript) [프로그래머스] 나누어 떨어지는 숫자 배열 (JavaScript) https://school.programmers.co.kr/learn/courses/30/lessons/12910 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. forEach() 사용 풀이 function solution(arr, divisor) { let answer = []; arr.forEach((e) => { if (e % divisor === 0) answer.push(e); }); answer.length === 0 ? answer.push(-1) : answer.sort(.. 2023. 6. 18. [프로그래머스] 가운데 글자 가져오기 (JavaScript) [프로그래머스] 가운데 글자 가져오기 (JavaScript) https://school.programmers.co.kr/learn/courses/30/lessons/12903 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(s) { if(s.length % 2 === 1) return s[Math.floor(s.length/2)] else return s[s.length/2 - 1] + s[s.length/2] } 코드 해설 - 자바스크립트에서는 문자열을 유사 배열 객체로 취급하므로 각 문자에 배열처럼 인덱스로 접근 가능합니.. 2023. 6. 18. [TIL] 230615 - 프로그래밍기초1 테스트, 팀과제, 자바스크립트 공부 오늘 한 일- 프로그래밍 기초1 테스트 - 팀 과제 야구게임 제출 - 자바스크립트 종합반 수강뭐라도 쓰자 하는 마음으로 침대에 누워서 폰으로 쓰는 TIL 사실 그냥 일기입니다 자세한 공부내용은 수정할 예정 오늘은 많은 일이 있었다 아파트에 전기 검진? 검사? 하는거 까먹어서 10시에 테스트 준비 하는데 갑자기 관리실 안내 나와서 너무 당황 10시에 테스트 시작인데 10시부터 1시까지 단전이라구요..? 전기 끊기는건데 와이파이는 생각 못하고 있다가 결국 데이터 켜고 폰으로 로지텍 연결해서 치기... 다행히 문제는 쉬운편이여서 후딱 치고 나왔다 비록 자릿수 내림 문제는 value-36 해서 틀렸지만 ㅋㅋㅋ 암튼 그러고 어떡하지 하다가 결국 아침먹고 짐싸서 카페 출근하니 벌써 오전시간 다 가있고... 점심시간.. 2023. 6. 16. [프로그래머스] 음양 더하기 (JavaScript) [프로그래머스] 음양 더하기 (JavaScript) https://school.programmers.co.kr/learn/courses/30/lessons/76501 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(absolutes, signs) { let answer = 0; for(let i = 0; i < absolutes.length ; i++){ let isPlus = signs[i] ? absolutes[i] : absolutes[i]*(-1); answer += isPlus; } return answer; } 2023. 6. 14. [프로그래머스] 문자열 내 p와 y의 개수 (JavaScript) [프로그래머스] 문자열 내 p와 y의 개수 (JavaScript) https://school.programmers.co.kr/learn/courses/30/lessons/12916 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(s) { let str = s.split(""); let pNum = 0; let yNum = 0; str.forEach((e) => { if (e === "p" || e === "P") pNum++; else if (e === "y" || e === "Y") yNum++; }); if (pNum =.. 2023. 6. 14. 이전 1 2 3 4 다음