본문 바로가기

전체 글122

약수의 개수와 덧셈 / 프로그래머스 연습문제 / programmers / level1 / Java https://programmers.co.kr/learn/courses/30/lessons/77884 코딩테스트 연습 - 약수의 개수와 덧셈 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주 programmers.co.kr 이번 문제도 생각보다 쉽게 풀었다. 약수의 개수를 구하고 해당 약수의 개수가 짝수인지 홀수인지만 구분해주면 되는 부분이었다. 약수를 구하여 짝, 홀을 리턴하는 메소드를 별도로 만들어 코드에 간결함을 더해보았다. [결과코드] public class divisor { public static void main(St.. 2021. 6. 11.
우아한테크러닝 4기 / 20210610 / 교육에 대한 기록 / 메모장 1교시 [진행상황 리뷰] 양채훈님 : Slate.js로 팝업에디터 구현한 것 리뷰. 리덕스 관련 설명 주셨는데 이해가 잘 가지 않음..(별도 공부 필요) (중간투표) : 리액트 상태관리 도구로 좋다고 생각하는 것? redux, mobx, recoil 유명환님 : redux, mobx, recoil 관련 차이점 설명해주심 면접관련질문 : 무언가를 설명한다는 것이 어려운 것 같긴 하다. 어떤 부분이 어려운가요?? 이윤희님 : 어디서부터 설명해야 하고 어디까지 해야할지 잘 모르겠어요. 조남은님 : 저 같은 경우에는 잘 모를 때, 설명할 수 없을 때가 제일 말이 안 나오는 것 같습니다. 김경재님 : 100%이해하지 못했으나 그것에 대해 설명해야 할 때? 이기주님 : 설명을 하면서 깨닫게 되는 경우도 있는 것 같.. 2021. 6. 10.
내적 / 프로그래머스 연습문제 / programmers / level1 / Java https://programmers.co.kr/learn/courses/30/lessons/70128 코딩테스트 연습 - 내적 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 programmers.co.kr 이번 문제는 내적이 무엇인지만 알면 쉽게 풀 수 있는 문제, 실제로 문제에 내적의 공식을 알려준다. 바로 코딩만 하면 된다. 내적의 사전적 의미 벡터 공간에서 정의된 이중선형(bilinear; 실수체에서) 혹은 반쌍형적(sesquilinear; 복소수체에서) 함수의 일종 고등학교.. 2021. 6. 10.
[1차] 비밀지도 / 프로그래머스 연습문제 / programmers / level1 / Java https://programmers.co.kr/learn/courses/30/lessons/17681 코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr 이번문제는 이진수 변환 관련 문제라고 보면된다. 이진수로 변환을 어떻게 할지만 풀수 있으면 생각보다 어렵지 않다. 다만 정말 사람마다 푸는 방법은 각양 각색이다. 코딩의 세계는 무궁무진하다. 보면서 나도 많은 것을 배운다. 특히, 재귀함수로 푸시는 분은 아주 기가막혔다. [알고리즘 Flow] 1. 각 지도의 2진수 결과를 담을 배열을 선언한다. 2. 2진.. 2021. 6. 9.
우아한테크러닝 4기 / 20210608 / 교육에 대한 기록 / 메모장 1교시 [지난 미션에 대한 리뷰시간] 황윤서님 : Draft.js로 리스트 기능 구현 민태님 긴급 피드백 - 다양한 주니어들의 실수로 나타나는 현상 - 본인의 맥락으로 설명하고 있다. 본인이 설명하고 싶은 것만 설명하고 있다. - 그래서 공유를 받는 다른 사람의 입장에서는 이해하기가 굉장히 어렵게 된다. - 그래서 처음 셋업 부터 단계적으로 어떤식으로 구현했는지 하나하나 설명하는 것이 필요해야 한다. - 별로 관심없는 시니어라면 대충 얼버무리고 발표를 끝내버릴 수도 있기 때문에 적극적인 설명이 필요. - 다른 사람에게 어떻게 전달할지에 대한 기술도 필요하다. 피드백후 재설명 구글 로그인 및 로그아웃을 react-google-login 패키지를 사용하여 구현 Draft.js를 이용하여 ordered-lis.. 2021. 6. 8.
폰켓몬 / 프로그래머스 연습문제 / programmers / level1 / Java https://programmers.co.kr/learn/courses/30/lessons/1845 코딩테스트 연습 - 폰켓몬 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. programmers.co.kr 이번문제는 순식간에 풀었다. level1은 이제 어느 정도 쉽게 어떤식으로 풀어야할지 감이 오는 것 같다. [알고리즘 Flow] 1. 가져갈 수 있는 최대 폰켓몬 수를 구해준다. 2. 폰켓몬의 종류의 수를 구해준다. 3. 둘의 값을 비교하여 가져갈 수 있는 최대 폰켓몬 수가 작으면 해당 수를 리턴하고, 그렇지 않으면 종류의 수를 리턴한다. [코드결과] impo.. 2021. 6. 8.
키패드 누르기 / 프로그래머스 연습문제 / programmers / level1 / Java https://programmers.co.kr/learn/courses/30/lessons/67256 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 개인적으로 level1은 아니었던 것 같다. 사실 문제의 풀이법은 금방 찾았지만... 다른 부분에서 엄청난 시간을 해매고 풀었다 ㅠ 그리고 각각 계산식마다 메소드를 분리해서 만들어주는 일종의 모듈화에 신경을 많이 쓰다보니 느려진 것도 있었다. 어쨌든 점.. 2021. 6. 7.
타입스크립트 / 타입으로 사용하는 인터페이스 인터페이스를 타입으로 사용하여 더 간단하게 코딩할 수 있다. 위와 같이 인터페이스에 각 변수명마다 데이터 타입을 지정해주고 함수에 인터페이스를 리턴타입으로 명시해주면 된다. [선택적 프로퍼티] 인터페이스 내에 데이터 타입의 변수명 뒤에 ? 를 붙여주면 해당 함수의 리턴값에 해당 데이터 타입의 리턴값이 명시되어 있지 않아도 에러가 발생 하지 않는다. ex)age?:number 로 해놓으면 return시 age:값 이것을 입력하지 않아도 리턴 된다. 인터페이스로 타입을 지정해주면 다른 함수를 사용시 재사용도 가능한 장점이 생긴다. [인터페이스와 메소드] 인터페이스 안에 메소드도 정의할 수 있다. 이렇게 직접 선언하는 것과 Arrowfunction을 사용하여도 가능하다. [Read Only 프로터티] 읽기 전.. 2021. 6. 6.
타입스크립트 타입 추론 / 타입 명시 타입스크립트의 가장 큰 특징중 하나는 정적 타이핑 기능 (Static Typing) 을 자바스크립트에 제공하는 것이다. Static Typing 이란? 타입을 선언하고 선언된 타입에 맞는 값만 할당 및 반환 되어야 한다는 의미이다. 타입추론 (Type Inference) 예시를 하나 보자 이렇게 js에서는 타입을 초기화 한 후 다시 타입에 다른 값을 초기화 할때 타입이 달라도 문제 없지만 ts에서는 에러 밑줄이 나온다. 컴파일시에도 에러가 나온다. 즉, 타입스크립트에서는 타입 표기가 없는 경우 코드를 읽고 분석하여 타입을 유추해 낼 수 있다. 이것이 타입 추론! 단순히 변수에 뿐만아니라 함수의 파라미터와 리턴 타입에도 적용된다. 타입명시 (Type Anotations) 타입명시란? 변수를 선언할 때 변수.. 2021. 6. 5.