분류 전체보기

·Algorithm (PS)
https://school.programmers.co.kr/learn/courses/30/lessons/42883 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr greedy 라길래 처음엔 단순하게 작은 숫자들 차례대로 구해서 전체 숫자에서 지워주는 방식으로 갔다 그런데 이 방식은 test case 3에서 걸린다.. "4177252841" 의 경우 가장 작은 숫자들 k 개 고르면 1, 1, 2, 2 인데 이걸 linear 하게 지우면 얻는 값이 477584 가 나오게 된다. but 실제로는 775841이 만들 수 있는 가장 큰 수라는 반례가 생긴다. (Gr..
·Algorithm (PS)
https://www.acmicpc.net/problem/17394 17394번: 핑거 스냅 [어벤져스] 시리즈를 보지 않은 사람이라도 ‘인피니티 건틀렛’이 무엇인지는 다들 알 것이다. 그래도 모르는 사람들을 위해 설명을 하자면, 인피니티 스톤이 모두 모인 인피니티 건틀렛을 끼 www.acmicpc.net 이문제는 BFS + 소수판별 알고리즘 이 핵심이었다. 오랜만에 에라토스테네스의 체를 정리해보았다. https://sinclairstudio.tistory.com/492 에라토스테네스의 체 (소수판별 알고리즘) Python 에라토스테네스의 체 소수를 구하는 알고리즘 문제에서 주로 사용되는 풀이 방식이다. 1. 2 ~ N 까지의 자연수들 중에서, 아직 지워지지 않은 수들 중에서 가장 작은 수를 찾는다. 이..
·Algorithm (PS)
에라토스테네스의 체 소수를 구하는 알고리즘 문제에서 주로 사용되는 풀이 방식이다. 1. 2 ~ N 까지의 자연수들 중에서, 아직 지워지지 않은 수들 중에서 가장 작은 수를 찾는다. 이를 p 라고 한다. 2. p는 소수이므로 지우지 않고 남겨준다. 3. p 의 배수들을 하나씩 지워나간다. 1 ~ 3 의 과정들을 반복하면 결국 소수들만 남게 된다. ex) 2는 소수이므로 지우지 않고 , 4, 6, 8 ... 은 지워나가기 위의 그림을 참고하면 이해가 빠르다 N = 1000000 primes = [True] * (N+1) # 소수 primes[0] = False # 0 은 자연수 아님 primes[1] = False # 1은 소수 될 수 없음 for i in range(2, N+1): if primes[i]:..
·Algorithm (PS)
https://www.acmicpc.net/problem/16197 16197번: 두 동전 N×M 크기의 보드와 4개의 버튼으로 이루어진 게임이 있다. 보드는 1×1크기의 정사각형 칸으로 나누어져 있고, 각각의 칸은 비어있거나, 벽이다. 두 개의 빈 칸에는 동전이 하나씩 놓여져 있고, www.acmicpc.net 느리긴하지만 통과했다 ㅎㅎ.. 문제를 처음에 제대로 안읽어서 두가지 원인으로 삽질을 했다. 1. 동전 1개만!!!!!!! 떨어뜨려야 한다 2개 떨어뜨리는건 안되고 꼭 1개만이다 .... 2. 벽을 만났을 때 ('#') 이동하지 않는다. 주의할 점은 벽을 만나서 이동하지 않다가 그다음 버튼누를때 다른 방향으로 이동을 시도하는 것이 가능하다는 것이다. 따라서 벽을 만났다고 해서 그 동전을 떨어뜨린 ..
인터넷 쇼핑몰이나 구글, 네이버 등 웹 사이트에 로그인을 하면 홈페이지에서 다른 페이지로 넘어가는 것처럼 새로운 요청을 보내도 로그인이 유지되는 것을 볼 수 있다. 당연한 것 처럼 보이지만, HTTP 프로토콜은 'Stateless' 한 특성을 가지고 있는 프로토콜이다. 서버는 통신이 끝나면 상태 정보를 유지하지 않는다. 원래대로라면 서버측에서는 요청을 보낸 클라이언트가 이전에 로그인 요청을 보낸 클라이언트와 동일한지 아닌지 상태 정보가 없으므로 모를 것이다. 이러한 Stateless한 특징을 보완하기 위해서, 로그인 기능을 구현할 때 가장 일반적인 방법으로 쿠키와 세션이 사용된다. 쿠키와 세션 없는 기존 HTTP 프로토콜 방식대로라면 구글에 로그인을 해서 Gmail, 구글 드라이브 등 다른 페이지로 이동..
·Algorithm (PS)
https://www.acmicpc.net/problem/9997 9997번: 폰트 첫째 줄에 단어의 개수 N (1 ≤ N ≤ 25)가 주어진다. 다음 N개 줄에는 사전에 포함되어있는 단어가 주어진다. 단어의 길이는 100을 넘지 않으며, 중복되는 단어는 주어지지 않는다. www.acmicpc.net * 비트마스킹을 사용할 수 있는 이유 : 알파벳 26자리 방문 표시를 0 or 1 로 할 수 있음 ex) 1
https://www.acmicpc.net/problem/1022 1022번: 소용돌이 예쁘게 출력하기 첫째 줄에 네 정수 r1, c1, r2, c2가 주어진다. www.acmicpc.net 어렵다.. 출력할 부분만 어떻게 만들어줘야하는지 감이 잘 안와서 어려웠던 문제이다. 또한 모눈종이에서 생각하는 좌표와 실제로 출력해줄 부분에서의 좌표 변환이 어려웠다 (board[x - r1][y - c1]) ㅠㅠ 문제 푸는 아이디어 1. 구현 자체는 소용돌이를 모두 구현한다고 생각하되, 배열은 출력할 크기인 (c2-c1+1) * (r2-r1+1)으로만 초기화해준다. board = [[0] * (c2-c1+1) for _ in range(r2-r1+1)] 그리고 x, y 가 board 범위에 속하는 경우에만 num ..
나는 오픽을 3일.. 아니 2일.. 사실 그것도 딱히 하루종일 공부한 것도 아니다 순수 공부시간이 총 5~6시간 될까? 오픽 특성상 말하면서 공부해야하기 때문에 목이 아파서 공부를 하루종일 할 수 없다 .. ㅠㅠ 암튼 내가 벼락치기한 썰을 풀어본다 1. 배경 본인은 영어로 간단한 커뮤니케이션을 할 수 있는 정도였다. 비영어권 유학 1년 영어권 인턴 6개월 해외 경험이 있다. 공채 시즌에 맞춰 급하게 오픽 점수가 필요한 상황. ㅠㅠ 2. 준비단계 - 어떤 문제가 나오는지 문제 유형 파악하기 & 문제 직접 풀어보기 (중요) 해커스 오픽 책으로 대비했다. 난 벼락치기니까 일단 문제와 유형을 빨리빨리 접해보는 것에 초점을 두었다. 시간이 없어서 내가 고를 취미/관심사 등 유형에 대한 세트 문제 위주로 준비했다 ..
minjiwoo
'분류 전체보기' 카테고리의 글 목록 (18 Page)