오늘의 문제! https://www.acmicpc.net/problem/2104 입력 첫째 줄에 N이 주어짐 둘째 줄에 N개의 정수들이 주어짐 풀이 해당 문제는 분할정복으로 해결했고 3가지 경우로 나뉘어진다. 1번 mid를 기준으로 왼쪽의 배열에서 최대값이 나오는 경우 2번 mid를 기준으로 오른쪽 배열에서 최대값이 나오는 경우 3번 mid를 기준으로 왼쪽과 오른쪽이 겹쳐서 최대값이 나오는 경우 따라서 우선은 1번 2번은 mid기준으로 나누고 최대값을 구하면되니 먼저 구해준다 그다음 3번을 구하는데 mid를 기준으로 왼쪽과 오른쪽중 큰값을 우선적으로 선택해서 결과값을 구해보고 최대값이면 갱신을 해준다. 물론 이때 값이 최소 원소값보다 작으면 해당 값을 갱신해주고 해당 확인은 현재의 배열 전체를 확인식으로..
오늘의 문제! https://www.acmicpc.net/problem/1629 입력 첫째 줄에 A B C가 주어짐 풀이 (A x B) % C 는 ((A%C) * (B%C)) % C 와 같다 그리고 B가 짝수이면 A의 B제곱은 A의 B/2제곱의 2제곱으로 나타낼 수 있다. B가 홀수 이면 A의 B/2제곱의 2제곱에 A를 곱한게 A의 B제곱이 된다. 이때 주의 점은 A B C가 최대 2,147,483,647 이므로 자료형 선택에 있어 조심해야한다. A가 20억 B가 2일때 C가 21억이면 결과를 구하는 과정에서 A * A가 400억이 되어 int 를 사용하면 중간과정에서 오버플로우가 발생한다. 소스 123456789101112131415161718192021222324252627 #include #incl..
오늘의 문제! https://www.acmicpc.net/problem/1493 입력 첫째 줄에 length width height 주어짐 둘째 줄에 N이 주어짐 셋째 줄부터 N개의 줄에 Ai와 Bi가 주어짐 풀이 박스에 들어가는 가장 큰 경우의 큐브부터 해결을 하여 최종적으로 1x1x1의 큐브로 줄여가면서 해결한다. 최초의 박스를 L x W x H 로 한다면 이때 들어갈 수 있는 큐브의 수는 각 L W H 를 큐브의 길이로 나눈 수로 구할 수 있다. 예를 들어 4 4 8 박스에 4 4 4 큐브를 넣는 수는 4/4 * 4/4 * 8/4 로 2개이다. 그리고 4 4 8 박스에 2 2 2 큐브를 넣는 수는 4/2 * 4/2 * 8/2 로 16개 이다. 이때 4 4 4 큐브를 최대로 넣고 2 2 2 큐브로 넣..
부스트코스를 수강하면서 배운 내용과 추가로 알고 싶은 내용을 정리하기로 했다 이번에 정리한 부분은 디자인패턴에 대한 내용이다 디자인패턴 GoF : "특정한 상황에서 일반적 설계문제를 해결하기 위해 상호교류하는 수정 가능한 객체와 클래스에 대한 설명" 라만(C. Larman) : "숙력된 객체지향 개발자 및 기타 소프트웨어 개발자는 소프트웨어 개발의 가이드라인이 되는 일반적인 원칙들과 관용적인 해결책들의 레퍼토리(repertorire)를 구축한다. 패턴은 이러한 원칙들과 관용적 해결책들이 문제와 해결책을 기술하는 구조적인 형태로 쳬계화되고 명명된 것이다." 소프트웨어를 설계할 때 특정 상황에서 자주 사용하는 패턴을 정형화한 것, 좋은 소프트웨어 설계를 위한 개발자들의 경험적 산물 디자인 패턴의 분류 목적 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cdwLdY/btqZZxLIVY1/7f2wz9ZCo4r3KAifkL8kY1/img.png)
부스트코스를 수강하면서 배운 내용과 추가로 알고 싶은 내용을 정리하기로 했다 오늘 정리한 부분은 UIKit에서 사용할 뷰와 관련한 내용이다 뷰 계층(View hierarchy) 뷰 계층구조와 서브뷰 관리 뷰는 자신의 콘텐츠를 보여주고, 다른 뷰를 위한 컨테이너의 역할을 함 뷰가 다른 뷰를 포함할때 자식뷰를 서브뷰(subview) 부모뷰를 슈퍼뷰(superview)라고 함 서뷰뷰가 불투명하면 서브뷰는 슈퍼뷰를 가림 서브뷰가 반투명하면 슈퍼뷰의 색상과 서브뷰의 색상이 섞여 보임 서브뷰가 여러개이고 겹치게 되면 늦게 추가된 서브뷰가 위로 올라옴 여러 서브뷰가 겹치고 반투명 하다면 색상은 전부 섞여 보임 ETC : Creating and Managing a View Hierarchy 뷰 계층의 생성과 관리 뷰는..
오늘의 문제! https://www.acmicpc.net/problem/15748 입력 첫줄에 L N rF rB 가 순서대로 주어지고 이어서 N개의 줄에 xi Ci가 주어진다 풀이 Ci의 값이 가장 큰 위치에서 쉬는게 가장 이득이다 가장 큰 곳에서 쉬고 그다음으로 가장 큰 곳에서 쉬는 식으로 하는게 가장 높은 값을 얻을 수 있다. 예를 들어 10 5 4 3 1 3 3 7 4 5 6 6 7 3 이라고 하면 선택할 쉼터는 (3,7) (6,6) (7,3) 이 되는 식이다 소스 Ci의 값이 최대인 경우만 바라보면 되기 때문에 힙을 사용했다. 현재위치는 curPoi 변수를 사용해서 확인해줬으며 xi의 값이 curPoi보다 작은경우는 넘어가 줬다. 1234567891011121314151617181920212223..
박트리님의 게시글중 https://baactree.tistory.com/14?category=735523 를 참고해서 알고리즘을 공부하고 있다 지금 내가 보고 있는 부분은 알고리즘 초급... 초급 알고리즘 내용을 보니 https://blog.naver.com/kks227/220775134486 내용을 추천해줬다 그래서 해당 내용에 의해 탐욕적기법부터 공부하고 있다 오늘의 문제는! https://www.acmicpc.net/problem/13904 입력 첫줄에 N이 주어지고 그다음 N개의 줄에 d와 w가 주어진다. d는 마감까지 남은 날, w는 해당 과제를 끝냈을 때 얻는 점수이다 풀이 처음엔 앞에서 부터 풀려고 했으나 선택지가 너무 많다 생각이 들어 바로 노선을 변경 뒤에서 시작하니 선택지가 많이 줄었다..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/byH7xo/btqZOscy79u/ze2rXQNOthmJ5WHXPjB3yK/img.png)
부스트코스(https://www.boostcourse.org/mo326) 를 수강하면서 배운 내용과 추가로 알고 싶은 내용을 정리하기로 했다. 오늘 정리한 부분은 음원 재생기 애플리케이션/오토 레이아웃/오토 레이아웃이란?과 음원 재생기 애플리케이션/오토 레이아웃/오토 레이아웃 구현하기(코드)를 수강하고 작성한 글이다 오토레이아웃은 앱을 만들때 정말로 중요하다고 생각한다 오토레이아웃 오토레이아웃( Auto Layout ) : 뷰의 제약 사항을 바탕으로 뷰 체계 내의 모든 뷰의 크기와 위치를 동적으로 계산 오토레이아웃의 필요성 : 인터페이스의 절대적인 좌표가 아닌 동적으로 상대적인 좌표가 필요한 경우에 유용 외부변경(External Changes) 슈퍼뷰의 크기나 모양이 변경될때 발생 사용자가 아이패드의 분..
- Total
- Today
- Yesterday
- 온라인저지
- apple
- HIG
- 백준
- Swift
- 부스트코스
- 알고리즘
- ios
- HumanInterfaceGuidelines
- DP
- storage
- 분할정복
- MVC
- 오토레이아웃
- Human Interface Guideline
- Human Interface Guidelines
- 디자인패턴
- 싱글톤
- UIView
- Firebase
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |