전체 글 46

[1일 1 알고리즘] D+6 - 배열의 평균값

https://school.programmers.co.kr/learn/courses/30/lessons/120817 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr해결방법function solution(numbers) { let answer = 0; for(let i = 0; i 사실 이렇게 for문을 이용하여 배열을 받아 각각 더해주면 쉽게 풀 수 있는 문제이다. 그렇다면 이렇게 시시한 문제를 왜 블로그에 기재하는가? 다른 사람이 푼 문제를 보았고, 이 방식이 새로워 공부하기 위해서 글로 남기기로 했다. 1. reduce 사용function solution(numbers) { var answer..

알고리즘 01:27:43

[1일 1 알고리즘] D+5 - 정수 내림차순으로 배치하기

https://school.programmers.co.kr/learn/courses/30/lessons/12933 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제해결 접근방식사실 그렇게 어려운 문제는 아니었다.1. 숫자를 각자 비교하기 위해선 가장 편리하게 배열형태로 바꾸어준다.2. 배열을 각각 비교하여 비교 순차를 돌린다.3. 정렬된 값을 숫자의 형태로 바꾼다. 하지만 나는 정렬까지는 모두 완료했지만, 마지막에서 숫자의 형태로 바꾸는 방법을 잘 알지 못했다..그래서 문제풀이간에 여러가지 생각과 추론을 해보았고, 그런 가능성이 존재하는 추론을 적어내기로 했다.1. 받은 배열 문자열의 형태를 sort("")를..

알고리즘 2026.02.19

[1일 1 알고리즘] D+4 - 최빈값 구하기

https://school.programmers.co.kr/learn/courses/30/lessons/120812 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr오늘은 머리가 잘 안돌아갔다...몸이 이상하게 피곤하고 눈이 자꾸 감기는게 약간은 쉬어줘야하는 타임이 다시 온것같다 ㅠㅠ사실 추석까지 공부를 계속 무리해서 하다보니 약간 방전된감이 없지않아 있다.. 하지만 1일 1알고리즘 챌린지를 최대한 지키기 위해서 최대한 풀어보았다.. function solution(array) { let answer = 0; let freq = {}; let value = 0; let maxCount ..

알고리즘 2026.02.17

[1일 1 알고리즘] D+3 - 숫자 문자열과 영단어(카카오 채용 연계형 인턴쉽)

https://school.programmers.co.kr/learn/courses/30/lessons/81301 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 접근 과정1. 하나의 숫자 영문은 하나의 객체 또는 배열로 바라본다.2. 숫자는 숫자 그대로 return한다.3. 하나의 숫자 영문인 객체 또는 배열을 숫자로 바꿔준다. 첫번째 접근one, two, three, four, ... , nine 까지의 문자열이 담긴 배열을 만들어준다.또 다른 변수를 선언해 for문을 이용하여 글자를 한 글자씩 담는다. 이때, 숫자일 경우엔 곧바로 answer 변수에 담는다.한글자씩 담을때 만약 진적에 선언한 배열과 글자가..

알고리즘 2026.02.15

[1일 1 알고리즘] D+2 - 유클리드 호제법

프로그래머스 문제https://school.programmers.co.kr/learn/courses/30/lessons/120808 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr과정아래에는 문제 스포가 있을 수 있습니다. 처음 문제를 읽고 배열 방식으로 해야겠다. 분수니까.. 라는 생각이 처음으로 들었다. 이때까지만해도 아직 문제의 방향성이 갑자기 막 떠오르진 않았다. 1. 너무나도 정석대로 numer1/denom1 * numer2/denom2 를 실행했다. 당연하게도... 값은 나오지만 기약분수처리가 되지 않는 상황이 발생..! 2. 기약분수 처리를 위해서 대표적으로 나눠지는 "최대 공약수를 구해야겠다!..

알고리즘 2026.02.14

반복문과 조건문 그리고 자료구조 과제

회고조 과정회고조의 시간때 배운 반복문과 조건문을 바탕으로 AI에게 문제를 제출해달라고 요청해서 회고조팀원들과 함께 각자 문제풀이를 진행하고 코드리뷰를 하는 시간을 가졌다. 늘 그렇듯 누군가가 작성한 코드를 내 코드와 비교하여 내 코드의 개선점과 더 나은 방향을 고민해보는것은 즐거운 일이었다 ㅎㅎ자료구조 스택과 큐나는 전공 학부생으로 어느정도 접해본 개념이지만 강사님께서 설 연휴동안 공부하고 싶은 사람들은 하라고 하여, 다시한번 복습하는 차원으로 정리를 실시해보았다. 피그마를 사용하여 작업을 진행했고, 피그마를 처음 만질때 보다 훨씬 실력이 늘어 이젠 간단한 이미지는 금방 금방 작업할 수 있게 되었다 ㅎㅎ 역시.... 끈기와 반복은 가장 무서운 법이다.. 흐흐흐... 다른 블로그처럼 스택구조는 Last ..

객체지향 프로그래밍 과정

1. Class 만들기2. Class를 메모리에 올리기3. 메모리에 있는 변수가 인스턴스를 참조하도록 함4. 변수가 참조하는 인스턴스 동작 이때, 여러 인스턴스가 하나의 변수를 참조할 수 있다. JS에서 이름을 지을때 규칙이 있다.- 변수시작 : 소문자, 카멜 형식을 사용한다.- 상수 변수모두 대문자를 사용한다.- 함수시작 : 소문자, 카멜 형식을 사용한다.- 클래스시작 : 대문자, 카멜 형식을 사용한다. ☆ 헷갈리는 ‘==’과 ‘===’ 두 개 비교하기 ☆== 는 타입 변환을 수행. ===는 타입 변환 없이 타입도 함께 비교실무에서는 예상치 못한 결과를 방지하기 위해 항상 ===를 사용하자let과 const란?블록 레벨 스코프(Block Level Scope)를 갖는 변수 선언 키워드* 블록 레벨 스코..

Firebase → Supabse 인증수단 교체

대형사고..기존에 Supabase에서 DB를 사용하고, 사용자 인증을 Firebase로 분류하여 진행하고 있었다. 나중에 게시글을 수정, 삭제할때 모든 사용자가 가능하게 되었고 이를 해결하기 위해서 Firebase의 UID를 Supabase의 UID로 대체하려고 했으나 서로 인증의 방식이 매우 다르고 UID값 또한 달라 연동이 쉽지 않음을 감지 때문에 Firebase의 인증수단을 포기하고 Supabase로 이동하였다.. 문제해결간의 생각의 흐름 먼저 이를 해결하기 위해서 여러가지 방법들을 고민해보았다. 사용하진 못했지만 분명 실행 가능성이 조금은 존재한 영역같아 글로 기록하기로 하였다. 1. Supabase + DB와 Firebase Auth사이에 DB를 둬서 작은 백엔드 서버처럼 미들웨어의 방식으로 ..

동기식 vs 비동기식

동기 vs 비동기 처리데이터를 DB로 보내는 과정에서 문제가 발생했다.문제상황게시물 저장 버튼을 누르자 어떠한 에러코드도 없이 잘 저장되는듯이 내가 지정한 페이지로 넘어감.이때 DB로 정보를 보내는중에 만약 문제가 있다면 콘솔을 찍을 수 있도록 구현하였다. 하지만 이번엔 어떠한 오류코드도 나타지 않았다. 동시에 실제 DB에는 어떠한 정보도 저장되지 않음.해결 방향1. 매우 짧은 게시물을 작성했을 경우 간헐적으로 DB에 저장이 되었다.2. 개발자 도구를 통해 모든 함수가 잘 작동하는것을 확인 "DB에 정보가 도달하지 못하나..?" 라고 생각하다 문득 어쩌면 함수의 순서를 바꿔보면 무엇이 안되는지 확인할 수 있음을 직감했다. 그렇게 찾아낸내용은 동기 함수에서 비동기로부터 데이터 요청을 한뒤에 페이지를 이동하..