분류 전체보기

acm-icpc 2020 서울 리저널에서 E번으로 출제되었던 문제이다. 내 기억상으로 3번째로 많이 풀렸던 문제였는데.. 그때 우리는 풀지 못했었다 🥺 하지만 지금은 다르다!! dp를 계속 풀다 생각나서 보니, 해답이 20분? 만에 떠올랐다. 디버깅 과정에서 많이 틀리긴 했는데,, 암튼 나 혼자 해결했다! 지금 생각해보니 그때 결과 보신 교수님은 우릴 어떻게 생각하셨을지... 😰 문제 출처 : https://www.acmicpc.net/problem/20173 문제는 출처 참고하세요! 풀이 문제에서 컴퓨터가 잘못 판단할 경우는 수가 인접할 때 (1과 2, 2와 3 등) 밖에 없다. 따라서 모든 대결(?)을 볼 필요 없이 수가 다음과 같이 줄어들게 된다. (1, 2), (2, 3), (3, 4), ...,..
출처 : https://www.acmicpc.net/problem/20176 참고한 글 : https://koosaga.com/263 문제 및 풀이 3개의 선분이 위에서부터 차례대로 하나씩 있고, 각 선분 당 특정 좌표에는 구멍이 뚫려있습니다. 아래 그림은 정답이 될 수 있는 바늘이 3개의 선분을 통과한 사례입니다. 기본적으로 바늘이 3개의 선분을 지나가기 위해서는 a~b, b~c 를 지나갈 때 선분의 기울기가 같아야 하고, b의 위치가 동일해야 합니다. 즉, a+c = 2 * b 를 만족한다면 바늘은 선분을 지날 수 있습니다. (편의상, 배열 A, B, C 의 어떤 한 원소를 a, b, c 라 하겠습니다) 일반적으로 모든 a+c 를 구하기 위해선, 어쩔 수 없이 배열 A, C의 원소를 모두 순회하며 구..
· 일상
이번 방학도 다른 방학과 다를 것 없이 자기 개발 계획을 세워보려한다. 다른 방학과 다른 점이 있다면, 이번 학기는 시험 기간에 놀고 먹다보니 종강하고 쉴 필요가 없어졌고, 알고리즘 문제 풀이 분야에 더이상 많은 시간을 투자하지 않는다는 점이다. 저번 방학만해도.. 한 달은 내내 강의 영상 찍기 바빠서 아무것도 못했는데,, 이젠 누굴 도와줄 형편이 안된다는걸 깨달아서 학회 규모도 줄이려고 한다. 나도 내 살 길부터 찾고 해야지 😅 1. 스프링 공부하기 why? 결국 졸업할 때까지 스프링을 파는 걸로 결론이 났다. 1학년 때는 계속 알고리즘을 파면 구글 코드잼도 입상하고.. 구글에 가는 것 아닐까? 라는 정신나간 생각을 잠깐하면서 알고리즘을 했고.. 2학년 때는 ai, 클라우드, 데이터 분야로 가면 뭔가 ..
· CSS
반갑다! 나는 css 어린이다. 오늘은 우리 프로젝트 사이트 디자인을 도굴하러 왔다! 프로젝트 페이지는 여기서 확인할 수 있다! (https://main.dgm2h3gefx045.amplifyapp.com/) 먼저 우리 사이트 도면을 소개하겠다! 도굴할 때 참고하도록! 메인 페이지이고! 헤더에서 푸터까지 보여주었으니 할 수 있겠지! 빨리빨리 움직이란말이야! 1. 전체 페이지 css 설정 * { box-sizing: border-box; } a:hover { text-decoration: none !important; } box-sizing을 border-box로 지정하였군! 이렇게 하면 테두리를 포함한 크기를 지정할 수 있기 때문에 예측하기 쉽지! 아주 기본이 되어있구만! (생활코딩 형님이 많이 추천하신..
· Android
드디어 모바일 과목이 종강했다! 앞으로 안드로이드 스튜디오를 다시 켤 일이 없을 것 같긴 한데 (아니 삭제하기 전에) 마지막으로 프로젝트하면서 한글로 된 정보가 많이 없었던 Firebase fcm 서비스에 관련해 포스팅을 하고 마치도록 하겠다! [시작 전 알고 있어야 할 내용들] Firebase와 프로젝트 연결 방법 기본적인 textview, button 넣는 방법 (xml 파일) Firebase database 사용 방법 (push, set, addValueEventListener, datachange snapshot,...) 뭐 많이 요구하는 것 같으나 fcm까지 왔으면 위 내용을 모를 수가 없다고 생각한다. 시작 전에, 이 포스팅 내용에 대해 영상을 보면서 따라 하고자 하면 아래 링크를 참고하면 좋..
· 일상
You should take one compliment to you during the day. 하루 동안 너에게 칭찬 한 가지는 가져가야 한다. 오늘의 말입니다. 😀 요즘 메이저리그에서 오랜 시간 활동하다 자국 리그로 와서 팀을 이끌고 있는 SSG 랜더스의 추신수 선수는 후배들에게 이런 말을 자주 한다고 한다. 오늘 경기에서 5타수 무안타를 쳐도, 실책을 남발했어도 나에게 주는 칭찬 한 가지는 가지고 경기장을 빠져나와야 한다고... 나는 코드를 짜서 무언가 개발을 할 때에도 하루 종일 했는데 아무것도 해결하지 못할 때가 많다. 그렇다고 이 상태면.. 자고 일어나도 막막해서 우울하더라.. 그래도 남들 놀 때 가만히 있었던 것도 아니고 적어도 문제가 무엇인지, 이건 해봤는데 안 돼! 정도는 알았으니 고생했..
· CSS
Margin Collapsing 은 "마진 상쇄"라는 뜻으로, 서로 다른 요소의 margin 이 겹치는 현상이 발생할 때 일어나게 된다. 예를 들어 다음과 같은 상황을 보자. 한 요소의 박스가 이렇게 생겼다고 할 때, 이걸 여러 번 연속으로 배치하게 되면 이렇게 된다고 생각할 수 있겠지만, 브라우저 렌더링 규칙에서는 위, 아래로 중복되는 마진을 상쇄시켜준다. 이런 경우를 Margin Collapsing 이라 하고, 위 그림이 브라우저에서는 다음과 같이 배치된다. Margin Collapsing 에서는 이렇게 형제끼리 마진이 맞닿는 상황뿐만 아니라 마진만 존재하는 빈 요소가 사이에 있을 경우도 있다. 보면 가운데 파란색 content 블록에 높이가 0이다. 비어있다는 의미이다. 이 요소를 아까 두 가지 같..
· CSS
1. Selector란? Selector란 말 그대로 선택자인데, html 코드 내에 있는 특정 요소들을 선택하여 스타일을 적용할 수 있게 하는 역할을 한다. 일반적으로 css 코드 내에서 중괄호({ }) 앞에 제목처럼 붙여진 코드들을 Selector라고 한다. 2. Selector 종류 글을 쓰면서 Selector 종류를 찾아보니 이게 웬걸.. 30개가 넘게 있었다! 일단 내가 공부하면서 쓸 것들만 정리해두었다. 1) Type Selector 기본적인 태그들 , , ... 의 스타일을 적용시켜준다. 2) Class Selector Html 에 있는 사용자가 정의한 클래스의 스타일을 적용시키는데, 클래스는 다음과 같이 생겼다. 클래스 선택자는 이름 앞에 .(점) 을 붙여주면 된다. 3) Id Select..
문제 S는 다음과 같이 정의된다. S(0, n) = n (모든 양의 정수 n) S(k, n) = S(k-1, 1) + S(k-1, 2) + ... + S(k-1, n) (모든 양의 정수 k, n) k와 n이 주어졌을 때, S(k, n)을 1,000,000,007로 나눈 나머지를 구하는 프로그램을 작성하시오. 풀이 이 문제같은 경우 어떤 성질을 이용해 점화식을 도출하고 ... 라는 일련의 과정보단, 직접 써보는 것이 이해가 빠를 것이다. 직접 써보니 이런 식의 표가 나왔다. 실제로 문제의 수식대로 저기까지만 계산해도 상당히 머리아픈데, 사람은 귀찮은걸 싫어하다보니.. 저거 쓰는 과정에서도 수를 빨리 도출해내는 법을 찾게 된다. 쓰다 보면 금방 찾는 규칙인데, 규칙은 다음과 같다. 파란색 원 안의 수는 그 ..
문제 링크 : https://www.acmicpc.net/problem/1014 문제 N행 M열 크기의 직사각형 교실이 주어지고, 각 교실은 1x1 단위 정사각형으로 이루어져 있다. 컨닝을 방지하기 위해 모든 학생은 자신의 왼쪽, 오른쪽, 왼쪽 대각선 위, 오른쪽 대각선 위에 다른 학생이 없도록 자리배치를 하고자 할 때, 교실에 배치할 수 있는 최대 학생 수를 구하여라. 풀이 문제를 보고, 가장 먼저 든 생각은 "다 해볼 수 있는 가?"였다. 물론 최대 10x10 정사각형의 교실이 주어지면, 각 교실 자리는 100개이고, 모든 경우의 수를 다 해보는 것은 2^100 이므로 당연히 불가능하다. 하지만, 이 문제의 경우 i번 째 줄이 어떤 상태이고, 이 상태 배치의 경우 최대 학생 수를 알 수 있다면 i+1..
제목을 잘못 적은 게 아니라, 문제 이름이 박성원이다.. 심지어 solved ac 공식 standard 문제! 풀이 이 문제는 3가지 부분 문제가 포함되어 있다고 볼 수 있다. 무려 길이가 최대 50인 자연수에 K로 나눈 나머지를 어떻게 구할 것인가 기약 분수 형태 출력은 어떻게 하는 게 빠를까? 위에 두 개 알았는데.. 그래서 어떻게 푸는데..? 우선 하나씩 해결해보자. 1. 큰 수(BigInteger) 나누기 우린 초등학교 3학년 때 구구단을 외우고, 4학년 때 나누는 방법을 배운다. 초4 수환이 큰 수 111111을 3으로 나누면 이런 방식으로 나눌 것이다. 이 과정을 살짝 프로그래밍적으로 분석하면 과정은 이러하다. 가장 앞자리 (자릿수가 가장 큰)부터 시작한다. 갖고 있는 수에 10을 곱한 후, ..
· 일상
주의사항! * 이 글에 있는 난이도 분석은 작성자 개인적인 의견이며 Solved.ac를 기준으로 선정하였습니다. * 외부에 공개를 막아두었거나, 따로 풀이가 없는 코딩 테스트들은 문제 유형이 정확하지 않을 수 있습니다. 1. 2020 카카오 인턴십 코딩테스트(2020.5) 이 문제는 여기서 풀어볼 수 있습니다! (programmers.co.kr/learn/challenges?tab=all_challenges) 문제 해설 - tech.kakao.com/2020/07/01/2020-internship-test/ 올해 처음 풀어보았던 기업 코딩 테스트였던 것 같네요 1번 문제는 문제 그대로 구현하시면 됩니다! 2번은 당시에 C++ 과목 수강을 하고 있다가 스택 뽕에 취해 중위 표기법을 후위로 바꾼 후 해결하는..
suhwanc
'분류 전체보기' 카테고리의 글 목록 (4 Page)