
프리코스 1주차 회고록
우테코 1주차 회고록 우테코 1주 차가 시작되었다. 문제는 문자열에서 구분자를 추출하고, 기본 구분자들과 해당 구분자들을 이용해 숫자를 나눠 값을 더하는 것이었다. 문제 자체는 쉬웠고 github에 익숙해지는 게 주목적이라고 생각한다. 나는 해당 문제를 해결하기 위해서 필요한 과정을 정리했다. 문자열을 커스텀 구분자 입력부와 숫자 입력부로 나눈...
우테코 1주차 회고록 우테코 1주 차가 시작되었다. 문제는 문자열에서 구분자를 추출하고, 기본 구분자들과 해당 구분자들을 이용해 숫자를 나눠 값을 더하는 것이었다. 문제 자체는 쉬웠고 github에 익숙해지는 게 주목적이라고 생각한다. 나는 해당 문제를 해결하기 위해서 필요한 과정을 정리했다. 문자열을 커스텀 구분자 입력부와 숫자 입력부로 나눈...
문제 링크 인사고과 풀이 예전에 풀어봤던 유형인데 틀렸다. 속상하다. 점수가 하나라도 다른 사람보다 높으면 인센티브를 받기 때문에 정렬을 사용하는 것이 확실했다. 처음에는 근무 태도 점수와 동료 평가 점수를 모두 내림차순으로 정렬했다. Collections.sort(ar, (a,b) -> { if(a[0] == b[0]) return b[...
문제 링크 [PCCP 기출문제] 4번 / 수식 복원하기 풀이 진법 변환 문제를 많이 접해보지 못해서 어려웠던 문제이다. ArrayList<Formula> com = new ArrayList<>(); ArrayList<Formula> nCom = new ArrayList<>(); 나는 먼저 계산된 식을 ...
Map이란? Java의 Map은 키(Key)와 값(Value)의 쌍으로 데이터를 저장하는 자료구조이다. 키 값은 유일해야하며, 하나의 키에 하나의 값만 대응될 수 있다. Map 인터페이스를 사용하면 중복되지 않는 키로 데이터를 효율적으로 관리하고 검색할 수 있다. Map 종류 HashMap 가장 많이 사용되는 Map 구현체로 해시 테이블...
문제 링크 마법의 숲 탐색 풀이 히든케이스 때문에 어려웠던 문제. 실제로 시험장에서 풀었으면 통과하지 못했을 것 같다. 이 문제는 시뮬레이션이기는 하지만 골렘이 숲을 벗어난 경우를 처리하는 것이 매우 까다로웠다. 일일히 골렘이 숲을 벗어난 경우를 찾아서 예외 처리를 하기 보다는 그냥 배열의 세로 크기를 +3 해준 상태로 시뮬레이션을 돌렸다. map...
문제 링크 SWEA 5653 줄기세포배양 풀이 자바가 익숙하지 않아서 어려웠던 문제. Comparator 객체를 사용하여 커스텀한 정렬 기준을 갖는 객체를 만드는 법을 마스터 해야겠다. static Set<String> check; 나는 이 문제를 읽고 해당 칸에 세포가 있는지 없는지를 배열을 통해 확인하는 것이 아니라 HashSet을...
문제 링크 SWEA 5658 보물상자 비밀번호 풀이 굉장히 단순한 문제인데 자바 사용이 익숙하지 않아서 배운게 많은 문제이다. 우선 나올 수 있는 16진수 수를 중복없이 내림차순으로 정해야 한다. 따라서 TreeSet 구조체를 이용했다. TreeSet<Integer> ts = new TreeSet<>(new Comparat...
화살표 함수 ES6에서 도입된 화살표 함수는 function 키워드 대신 화살표(=>)를 사용해 좀 더 간략한 방법으로 함수를 선언할 수 있다. // 화살표 함수 const add = (x,y) => x + y; console.log(add(2,5)); // 7 화살표 함수는 기존의 함수보다 표현만 간략한 것이 아니라 내부 동작 또한 ...
프로미스 전통적인 콜백 패턴은 콜백 헬로 인해 가독성이 나쁘고 비동기 처리 중 발생한 에러의 처리가 곤란하며 여러 개의 비동기 처리를 한 번에 처리하는 데도 한계가 있다. ES6에서는 비동기 처리를 위한 또 다른 패턴으로 프로미스를 도입했다. 프로미스는 전통적인 콜백 패턴이 가진 단점을 보완하며 비동기 처리 시점을 명확하게 표현할 수 있다는 장점이 ...
this 키워드 메서드가 자신이 속한 객체의 프로퍼티를 참조하려면 먼저 자신이 속한 객체를 가리키는 식별자를 참조할 수 있어야 한다. const circle = { radius: 5, getDiameter(){ return 2 * circle.radius; } }; 객체 리터럴로 객체를 생성하는 경우에는 getDiameter를 ...