목록분류 전체보기 (122)
어디까지 갈 수 있을까?
[배열돌리기 2] 문제링크 https://www.acmicpc.net/problem/169267 배열돌리기 1을 할 때는 원본 배열을 copy해서 돌렸는데 한번 돌릴때마다 계속 배열을 복사해야 하다보니 시간이 오래걸렸다. 배열돌리기 2에서도 배열돌리기 1에서 하던 로직으로 pypy3는 통과했지만, python에서는 시간초과가 났다. 그래서, queue를 사용해서 1차원적으로 접근해 돌릴 수 있는 만큼 다 돌리고 원본배열에 반영했는데 훨씬 쉬웠다. queue같은 경우 linkedlist로 구현돼 맨앞이나 맨뒤에서 append나 pop이 일어난다고 해도 O(1)안에 연산이 가능해 시간도 많이 줄었다. python으로도 268ms에 맞았습니다 판정이 났다. [배운점] while과 queue의 조합이 너무 좋았..
접두사와 접미사를 이용한 알고리즘이다 비교 과정을 보면 텍스트 : ABABABC 패턴 : ABABC 일 때, 1. 인덱스 0 1 2 3 4 5 6 텍스트 A B A B A B C 패턴 A B A B C 2. 인덱스 0 1 2 3 4 5 6 텍스트 A B A B A B C 패턴 A B A B C index 4에서 불일치가 일어났을 때, index 0~1과 2~3의 패턴이 [AB]로 일치함을 이용해 중간 비교과정을 건너 뛰는 알고리즘이다. 이를 만들기 위해서는 전처리가 필요하다 비교하고 싶은 pattern이 abcdabcy라고 할 때 인덱스 문자열 최장 패턴 일치 길이(pi[j]) 0 a 0 1 ab 0 2 abc 0 3 abcd 0 4 abcda 1 5 abcdab 2 6 abcdabc 3 7 abcdab..
1. 색 조합 보여주는 사이트 https://material.io/resources/color/#!/?view.left=0&view.right=0 Color Tool - Material Design Create and share color palettes for your UI, and measure the accessibility of any color combination. material.io 2. HTML 오류 체킹 사이트 https://validator.w3.org/ The W3C Markup Validation Service Validate by File Upload Note: file upload may not work with Internet Explorer on some versions o..
Next Permutation 사전순으로 다음에 올 수를 구하는 알고리즘 1 2 3 4 라는 배열이 있다고 했을때 next_permutation()을 사용하면 1 2 4 3 그러니까 사전순으로 다음 배열을 반환한다 c++에는 라이브러리로 있는데 자바에는 없어서 사용하려면 직접 구현해야한다 알고리즘 순서 1. 배열을 오름차순으로 정렬합니다 2. 뒤에서부터 탐색해 꼭대기 값을 찾습니다 3. 꼭대기-1 값보다 크거나 같은 값을 뒤에서부터 탐색해 둘을 교환합니다 4. 꼭대기값 ~ 끝값까지 오름차순 정렬합니다 5. 2~4를 반복합니다 이 알고리즘을 가장 잘 설명한다고 생각하는 사진을 공유한다 출처 : https://velog.io/@hongcheol/%EA%B0%9C%EB%B0%9C%EC%9D%BC%EC%A7%8..
순열 순서가 부여된 집합 {1, 2, 3}과 {2, 1, 3}을 다른 집합으로 생각한다. 이게 조합과 순열의 차이점 순열 라이브러리 X def permutation(brr, depth): if depth == N: print(*brr) return for i in range(0, len(arr)): if visited[i]: continue visited[i]=True brr[depth]=arr[i] permutation(brr, depth+1) visited[i]=False if __name__ == "__main__": N=int(input()) arr=[i for i in range(1, N+1)] visited = [False] * len(arr) permutation([0]*N, 0) 자바는 배..
팀 내에서 새기능은 [feat: 커밋 메시지] 수정한 기능은 [refactor: 커밋 메시지]로 적기로 했는데 실수해서 메시지 수정이 필요했다. 위의 세 메시지를 수정해보자 소스트리 사용자의 경우 오른쪽 위의 터미널을 누르면 터미널이 뜨게 된다 0. 깃 로그 확인하기 git log 깃 로그를 확인할 수 있다 git log -3 과 같이 보고 싶은 로그 개수를 지정할 수도 있다. q 누르면 빠져나옴 1. 수정할 커밋 메시지 범위 정하기 git rebase -i HEAD~6 현재 head부터 수정할 로그까지의 개수를 적으면 된다 나는 [Querydsl 설정 변경] 커밋까지 수정해야 하므로 6을 적었다 2. 수정할 커밋 메시지 특정하기 여기까지 하면 왼쪽 그림과 같이 나오는데 이 중 변경하고 싶은 커밋을 오른..
싸피 첫수업 전에 웬 무기같은 박스가 도착했다 구성품은 웹캠, 에코백, 텀블러, 후드집업, 반팔티 전 기수분들은 웹캠이 없다는 이유로 카메라 안 키고 수업 들었다는데 우린 그게 원천 봉쇄됐다,, 카메라를 안 키니 카메라를 아예 줘버리는 싸피 클라스. 요즘 화상 면접도 많이하고 스터디에서 마이크 쓸 일도 많았는데 이렇게 웹캠(마이크 내장형)을 주니 너무 좋았다. 후드는 분명 M사이즈 골랐는데 105가 와버려서,, 수선해서 입어야 되나? 이불대용으로 써야되나? 어떻게 해야 할 지 모르겠다. 분반 테스트를 봤는데 상위권 성적이었는지 비전공반(파이썬반)에서 전공반(자바반)으로 올라갔다. 비전공반에서 전공반으로 올라가신 분이 정말 극소수 인 걸로 보아 내 진심어린 풀이가 먹힌 거 같다. 시간 꽤 많이 줬는데 시간..
1지망 서울 합 ㅎㅎ 1. CT 준비 안 했다. 진짜 단 1도 준비하지 않았다. 점수에 크게 상관없이 부정행위 했는지 안 했는지만 체크한다는 카더라가 있다. 근데 카더라가 아니더라도 CT보다 면접이 훠얼씬 중요하니 CT할 시간에 면접 준비를 하자. 준비물 물어보시는 분도 있는데 시계 완전 크게 있고 종이, 펜 다 준다. 빈 손으로 가도 될 정도다. 어차피 개인 용품은 안에서 사용 못 하니까 혹시 공부할 거 필요하시면 그것만 들고 가시는 걸로. 그리고 정말 과정 아무것도 모르고 가도 앞에 계시는 분이 하나하나 이거 하라고 가르쳐 주시니까 진짜 몸만가도 된다. 2. PT 준비 https://youtu.be/DOvCIrwMPbQ 이 영상이 많은 도움이 됐다. PT면접은 구조화가 생명이다. 논리적으로 내 의견을..