목록전체 글 (77)
걸음마부터 달리기

저번에 참고해서 푼거 복습할겸 다시 풀어봤다.3칸을 매 반복 안에서 모든 요소를 다시 확인하면 결국 O(SP) 복잡도가 되어서 시간초과가 날 것이다. 윈도우를 이동하면 항상 추가된 요소만 반영, 나가는 요소도 반영 즉 O(2)의 상수복잡도만 고려해도 되어서 O(N)에서 끝길 수 있다.import java.util.*;import java.lang.*;import java.io.*;//A C G T// The main method must be in a class named "Main".class Main { static int start=0; static int end=0; static int count=0; public static void main(String[] args) th..

백준 12891번 2개의 포인터로 범위의 양끝을 가르키고 그 양끝을 기준으로 문제를 해결한다. 1) 처음에는 윈도우를 잡고 그 다음부터는 for문으로 옆으로 땡기면서 관찰하면 된다.그렇게 땡기게되면 모든 배열을 윈도우로 순회할때 O(n) , 윈도우의 맨 앞 원소는 삭제되고 뒤에서부터 하나는 추가되기에 삭제되고 추가되는 총 2개의 원소들만 작업 처리해주면 된다. 2) 삭제,추가되는 원소들에 대해 구하고자 하는 기준과 비교해야되는데 현재 윈도우 안에서의 원소들에 대하여 카운트 하고 있는 배열이 있을거고 맞으면 답이 되는 기준배열이 있을것이다. 매 윈도우 이동마다 기준배열과 카운트 배열을 무식하게 하나씩 비교하면 이 또한 O(N)만큼 소요될 것이다. 하지만 슬라이딩을 원소의 추가/삭제 기준으로 본다면 추가되..

브라우저 렌더링과 Virtual DOMhttps://jeong-pro.tistory.com/210 Virtual DOM 동작 원리와 이해 (with 브라우저의 렌더링 과정)Virtual DOM? 1. Virtual DOM이란? → "DOM을 추상화한 가상의 객체" DOM을 추상화한 가상의 객체라고 표현해봤습니다. (개인이 내린 정의) 그러면 우선 저 문장을 이해하기 위해서 DOM이란 뭔지 알아야합니jeong-pro.tistory.com https://velog.io/@bebrain/%EC%9B%B9%ED%8E%98%EC%9D%B4%EC%A7%80-%EB%A1%9C%EB%94%A9-%EA%B3%BC%EC%A0%95 웹페이지 로딩 과정Chrome, Safari, Firefox, Internet Explore..

백준 11660일단 구간합 D 배열을 만든다. 이때 D 배열은 (0,0) 부터 (x2,y2) 까지 모두 더한 값을 D[x2,y2]로 정의한다.근데 우리가 구하고자하는 값은 (x1,y1)~(x2,y2) 의 사각형 부분의 합이니까 D[x2][y2]-D[x2][y1-1]-D[x1-1][y2]+D[x1-1][y1-1] 의 작전으로 짜면 된다.import java.util.*;import java.lang.*;import java.io.*;// N쪽에선 O(n^2) 가능하고 M쪽에선 O(N)// 구간합 배열 만들땐 이중 for문으로 만들고 M에서 출력// The main method must be in a class named "Main".class Main { public static void main(..

1억번 연산 >> 1초의 시간 연산횟수 = 알고리즘 시간복잡도 * 데이터의 크기ex) 버블정렬이면 n^2이니까 데이터의 크기가 100만이면 (100만)^2 = 2초의 시간은 불가능함2초의 시간 == 2억번 , (100만)^2 > 2억번이라서... 1) 시간제한보고 알맞는 알고리즘 선택기준2)) 비효율적인 로직 찾아서 효율적으로 바꿀때 기본적으로 자료형 int가 아닌 long형으로 하는 습관을 들이자. int형은 21만밖에 안됨 배열: 간단하고 데이터 크기가 fix, 데이터 접근이 많을때도리스트: 크기가 변하거나 , 데이터가 삽입 삭제가 많을때도구간합총 n번의 구간합을 구하기 위한 for문 하나 + 입력받는 배열을 뒤지면서 (for문 한번) 각각의 구간합을 구하면 총 O(n^2)인데 이보다 더 빨리 구하..

https://velog.io/@skyoffly/%EA%B0%9C%EB%B0%9C-%EC%A7%80%EC%8B%9D-Typescript-.ts%EC%99%80-.tsx%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90%EC%9D%80 개발 지식 - Typescript, .ts와 .tsx의 차이점은?타입스크립트를 사용하게 되면 이전과는 달리 파일의 확장자를 js, jsx에서 ts, tsx로 바꾸어 사용하게 된다.분명 확장자는 다른데, 어떤 확장자를 사용해도 별 차이점을 느낄 수가 없다. 그렇다면velog.io 현재 진행중인 코드를 보면 tsx 확장자를 쓰는 것이 보인다. 타입스크립트로 React를 사용하고 있을때 단순 타입스크립트 확장자 ts가 아닌 tsx를 쓰는것은 JavaScript X..

flex:기존에 float나 inline-block으로는 수평 구성의 경우 참으로 귀찮았음. .clearfix::after { content: ""; clear: both; display: block;}.box { float: left;}따라서 쉬운 수평 구성을 위해서 flex라는 display 속성을 이용하여 더 쉽게 구조를 구성하겠다는거 주축과 교차축주축은 item이 표시되는 방향 교차축은 주축의 수직방향 align-items (Container)이것은 교차축을 기준으로 Flex 컨테이너 안에 있는 item이 어느 위치에 놓일건지 결정flex (item) Item의 너비(증가, 감소, 기본)를 설정하는 단축 속성입니다.flex: 증가너비 감소너비 기본너비;flex: 1 이면 증가너비가..

https://toss.im/slash-24 토스 개발자 컨퍼런스 SLASH24참가 신청 8.23-9.2 / 본 행사 9.12 COEXtoss.im 기본 이론적 공부는 이만하면 된거같아 전체적인 웹 개발 및 서버개발을 위해 한 사이클을 토이 프로젝트를 통해 돌려보고 있다. 특히 금융권 서버 개발자라는 목표 하나만으로 개발의 길을 걷기 시작하면서 방황하던 와중, 취업하신 학교 선배님이 이번에 토스 세션이 있으니 가서 감이라도 잡아보라는 말씀에 신청해본다. 시간표) 상당히 기술적으로도 낯설 뿐만 아니라 도메인에 특화된 워딩이 많았다 현직자도 아니고 취준생에 막 진입한 4학년 학생이 보기에 최대한 범용적으로 시간표를 구성해봤다 당연히 오프닝 세션은 이런 컨퍼런스는 처음이라 분위기를 보고싶어서 넣어보았다. ..