Thief of Wealth
[LeetCode] 8. String to Integer (atoi)
개발/알고리즘 2021. 1. 22. 00:18

leetcode.com/problems/string-to-integer-atoi/ String to Integer (atoi) - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 핵심아이디어 문제의 조건을 구현하기만 하면된다. 1. 앞 공백은 무시한다. => trim(' ')을 사용 2. -, +는 음,양수를 뜻한다. 아무 sign이 없으면 양수이다. 3. 숫자가 아닌 문자가 나오면 그 뒤의 문자열은 무시한다. (첫번째가 -,+인 경우는 당연히 제외겠지?), (처..

[Javascript][LeetCode] Reverse Integer
개발/알고리즘 2021. 1. 17. 19:58

leetcode.com/problems/reverse-integer/ Reverse Integer - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 핵심아이디어 알고리즘이 어떻냐 보다는 해당 언어에 대한 이해가 필요한 문제였다. 숫자를 뒤집고 4byte범위를 벗어나면 0을 반환하는 문제였다. -2^31 ~ 2^31-1 범위를 표현하기 위해 -2**31, 2**31-1 를 사용했으나 -2**31는 표현방법에 맞지 않음을 깨달았다. /** * @param {numb..

[Javascript][BOJ] 1302 베스트 셀러
개발/알고리즘 2021. 1. 14. 00:31

www.acmicpc.net/problem/1302 1302번: 베스트셀러 첫째 줄에 오늘 하루 동안 팔린 책의 개수 N이 주어진다. 이 값은 1,000보다 작거나 같은 자연수이다. 둘째부터 N개의 줄에 책의 제목이 입력으로 들어온다. 책의 제목의 길이는 50보다 작거나 같고 www.acmicpc.net 핵심 아이디어 카운트 개수에 따라 카운팅하되, 카운트 개수가 같다면 이름의 사전순으로 정렬하는 문제이다. 파이썬으로 하기엔 간편했으나 자바스크립트로 어떻게 2개의 조건을 사용할지, dict 형을 어떻게 정렬해야할지 고민되었던 문제이다. 먼저 dict는 array타입으로 [키, 값]으로 바꿔주고 그 array에 비교함수를 sort인자로 주어서 해결하였다. const readline = require('re..

[Javascript][BOJ] 1967 트리의 지름
개발/알고리즘 2021. 1. 11. 00:07

www.acmicpc.net/problem/1967 1967번: 트리의 지름 파일의 첫 번째 줄은 노드의 개수 n(1 ≤ n ≤ 10,000)이다. 둘째 줄부터 n-1개의 줄에 각 간선에 대한 정보가 들어온다. 간선에 대한 정보는 세 개의 정수로 이루어져 있다. 첫 번째 정수는 간선이 연 www.acmicpc.net 핵심 아이디어 트리의 지름을 구하는 문제는 풀이법이 정해져있는것 같다. 핵심은 무작위의 점에서 가장 멀리 있는 점을 구한뒤, 그 점에서 한번 더 가장 멀리있는 점과의 거리가 트리의 지름이 된다는 것이다. 즉, 1번 노드에서 다익스트라를 이용해 가장 멀리 있는 노드 x를 구하고, x에서 한번 더 다익스트라 알고리즘을 통해 가장 멀리 있는 노드사이의 거리를 구하면된다. const readline..

[Javascript][BOJ] 1446 지름길
개발/알고리즘 2021. 1. 10. 00:15

www.acmicpc.net/problem/1446 1446번: 지름길 첫째 줄에 지름길의 개수 N과 고속도로의 길이 D가 주어진다. N은 12 이하이고, D는 10,000보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 지름길의 시작 위치, 도착 위치, 지름길의 길이가 주 www.acmicpc.net 핵심 아이디어 단방향의 경로가 주어진 다익스트라 문제이다. 예제를 풀이하자면 0부터 150까지 움직이는데, 가장 최소의 비용을 구하라는 문제로, 0 -> 50 50 -> 100 위 2가지의 지름길로 이동하고 100부터 150까지는 정상적으로 이동해서 총 비용이 70이된다. 이 문제와 다른 문제의 차이점은 지름길에 주어진, 값들만 노드로 존재하는 것이 아니라 0~D까지의 모든 지점에 대해 다익스트라를 ..

[Javascript][BOJ] 1504 특정한 최단 경로
개발/알고리즘 2021. 1. 8. 22:31

www.acmicpc.net/problem/1504 1504번: 특정한 최단 경로 첫째 줄에 정점의 개수 N과 간선의 개수 E가 주어진다. (2 ≤ N ≤ 800, 0 ≤ E ≤ 200,000) 둘째 줄부터 E개의 줄에 걸쳐서 세 개의 정수 a, b, c가 주어지는데, a번 정점에서 b번 정점까지 양방향 길이 존 www.acmicpc.net 핵심 아이디어 1=>N으로 이동하는데, 2개의 정점을 무조건 지나는 가장 최소의 경로의 가중치를 구하는 문제이다. 처음엔 어떻게 접근해야 할지 감을 잡지못하고, 모든 경로를 탐색하여 v1,v2을 포함하는 경로를 찾아내는 방법 밖에 구상하지 못했다. 풀이를 보니, 정답은 1->...->v1->...->v2->...->N 1->...->v2->...->v1->...->N..

[Javascript][BOJ] 주사위 굴리기
개발/알고리즘 2021. 1. 8. 01:01

www.acmicpc.net/problem/14499 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지도 www.acmicpc.net 핵심 아이디어 생소한 시뮬레이션 문제로, 주사위를 굴리는 상황을 생각해야한다. 주사위가 움직일때 각 면의 값들을 업데이트 해주는 함수를 만들고 board 값이 0이면 주사위와 board가 맞닿은 면의 값을 board에 복사, 0이 아니라면 주사위와 board가 맞닿은 면의 값이 board의 값으로 바뀌고, 기존 board는 0으로 바뀐다. 주사위..

[Frontend Interview] 프로그레시브 렌더링이 무엇인가?
개발/알고리즘 2021. 1. 7. 03:11

프로그레시브 렌더링 (점진적인 렌더링)이란 콘텐츠를 가능한한 빠르게 표시하기 위해 웹 페이지의 성능을 향상시키는 데 사용되는 기술이다. (특히, 인식되는 로딩 시간을 향상시킨다.) 서버에서 웹 페이지의 일부를 순차적으로 렌더링하고 전체 페이지가 렌더링 될 때까지 기다리지 않고, 부분적으로 클라이언트에 스트리밍하는 기술이다. 점진적인 렌더링을 이해하려면, Client Side Rendering, Server Side Rendering이 어떻게 작동하는지 이해해야한다. (velog.io/@bisu8018/%EC%A0%90%EC%A7%84%EC%A0%81-%EB%A0%8C%EB%8D%94%EB%A7%81Progressive-Rendering-%EC%9D%B4%EB%9E%80) CSR (Client Side R..

profile on loading

Loading...