일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
- 안드로이드 미세먼지
- 좌표 정렬하기2
- 수 정렬하기3
- 코틀린 공공데이터
- kotlin retrofit
- 백준
- 안드로이드 인트로 화면
- 공공데이터 kotlin
- 백준 4949
- 백준 랜선 자르기
- 백준 11650
- ViewBinding Fragment
- 공공데이터 retrofit
- 백준 요세푸스 문제0
- 백준 1920
- 안드로이드 인트로 코틀린
- 백준 균형잡힌 세상
- 백준 암호제작
- 안드로이드 공공데이터
- 모각코
- 인트로 애니메이션
- 백준 1837
- 좌표 정렬하기
- 나이순 정렬
- kotlin fragment
- 코틀린 미세먼지
- 백준 통계
- Fragment 이동
- 백준 11651
- 백준 11866
- Today
- Total
목록분류 전체보기 (23)
개발 지식 공유, 복습
보통 개발자들이라면 협업할 때 주로 Git을 사용할 것이다. 저장소를 git에 연동하면, 파일이 수정될 때마다 git이 이를 인식하고 따라온다. 이때 커밋을 할 경우 불필요한 파일들이 같이 commit 되어 파일의 용량이 매우 커져 오래 걸리기도 하지만 나 같은 경우는 pull request를 하고 merge를 할 때 conflict가 발생했는데 용량이 너무 커서 github 페이지에서 수정하지 못하는 문제가 발생했다. (애초에 이 문제가 발생한 것은 내 잘못이다...!) 안드로이드 개발과 같은 경우 .idea나 .gradle과 같은 파일들이 문제이다. 그래서. gitingore 파일을 만들어 이 안에 git이 추적할 필요 없는 것들을 명시하고 새롭게 수정할 때마다 따라올 필요가 없도록 만든다. 처음에는..
화면을 구성하는 방법은 액티비티와 프래그먼트 보통 2가지로 알고 있다. 이때 프래그먼트는 액티비티의 일부만 바꾸는 방식이다. 먼저 메인 액티비티 화면 구성을 해주자. 간단하게 버튼 2개를 액티비티에 두고 각 버튼을 누르면 해당 프래그먼트가 나타나게 구현할 것이다. 프래그먼트가 놓일 공간을 FrameLayout으로 놓는다. 이는 Layout 부분에서 찾을 수 있다. 그리고 각 프래그먼트를 구성할 xml을 만들어준다. 또 다른 프래그먼트 또한 이와 비슷하게 구성했다. 프래그먼트 클래스이다. 그 전 블로그처럼 액티비티뿐 아니라 프래그먼트도 viewBinding을 이용해 구현해보았다. 기본적인 설정은 안드로이드 개발자 공식 페이지를 보면 도움이 될 것이다. https://developer.android.com/..
안드로이드 앱에 인트로 화면 추가하기 보통 어플을 실행시키면 회사 로고 이미지가 잠시 띄워지면서 앱이 실행된다. 그래서 이 화면을 오늘 만들어 볼 것이다. 해당 이미지를 Ctrl + C, Ctrl + V를 통해 drawable 파일에 복붙을 한다. 이때 위 파일에 붙여 넣기를 했다. 이제 인트로 화면을 따로 디자인해야 한다. 그래서 layout에서 새 화면을 만들어야 한다. 이때 레이아웃에 보통 이미지 하나 정도가 들어가니 어느 레이아웃을 사용하든 상관 없을 것 같다. 그리고 인트로 화면을 활용할 인트로 액티비티도 하나 만들어준다. 18 ~ 23줄을 보면 handler을 이용해 인트로 화면에서 메인 액티비티로 넘어갈 수 있도록 한다. 이때 delayMillis는 1000당 1초이다. 그래서 2초 뒤 화면..
https://www.acmicpc.net/problem/1654 1654번: 랜선 자르기 첫째 줄에는 오영식이 이미 가지고 있는 랜선의 개수 K, 그리고 필요한 랜선의 개수 N이 입력된다. K는 1이상 10,000이하의 정수이고, N은 1이상 1,000,000이하의 정수이다. 그리고 항상 K ≦ N 이다. 그 www.acmicpc.net 이번 문제는 k개의 랜선을 잘라서 모두 길이가 같은 n개의 랜선으로 만들어야 하는데 이때의 최대 길이를 구하는 문제이다. (n보다 많이 만드는 것도 n개를 만드는 것에 포함된다.) 이 문제의 접근 방법은 랜선의 길이를 1부터 가장 긴 랜선의 길이만큼 브루트 포스를 이용해서 구할 수도 있겠지만, 문제를 보면 한 랜선의 최대길이는 2^31 - 1 이하이므로 엄청나게 커 시..
#include https://www.acmicpc.net/problem/1837 1837번: 암호제작 원룡이는 한 컴퓨터 보안 회사에서 일을 하고 있다. 그러던 도중, 원룡이는 YESWOA.COM 으로부터 홈페이지 유저들의 비밀키를 만들라는 지시를 받았다. 원룡이는 비밀 키를 다음과 같은 방법으로 www.acmicpc.net 두 소수 p와 q를 곱한 결과와 임의로 주어진 k에 대해 p나 q가 k보다 작지 않을 때는 그 암호는 좋지 않은 암호로 간주한다. 즉, 두 소수의 값이 k보다 작지 않아야 한다! 여기서 새로 알게 된 점은 그동안 일일이 모든 라이브러리를 하나씩 include 했었는데 한 include로 모든 라이브러리에 접근할 수 있는 방법을 알았다. #include using namespace ..
https://www.acmicpc.net/problem/11866 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net N이 주어지면 1부터 N까지 오름차순으로 원을 그려 앉고 오름차순으로 K번째 해당하는 수를 모든 수가 삭제될 때까지 반복해서 지우며 그 순서를 출력하는 문제이다. 예를 들어, N = 7, K = 3이다. 1) 1, 2, 3 -> 3 삭제 => 1, 2, 4, 5, 6, 7 2) 4, 5, 6 -> 6 삭제 => 1, 2, 4, 5, 7 3) 7, 1, 2 -> 2 삭제 => 1, 4, 5, 7 4) 4, 5, 7 -> 7 삭제 => 1, 4, 5 5) 1, 4, 5 -> 5 삭제 ..
https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 하나 또는 여러줄에 걸쳐서 문자열이 주어진다. 각 문자열은 영문 알파벳, 공백, 소괄호("( )") 대괄호("[ ]")등으로 이루어져 있으며, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마 www.acmicpc.net 이번 문제는 괄호가 각 줄마다 올바르게 입력되어 있는지 판별하는 문제이다. 여기서 저는 문장을 입력받는 것을 string 헤더를 이용해 string 형으로 받았고 원래대로 cin을 통해 입력을 받는다면 띄어쓰기가 된 지점까지만 인식한다. 그래서 getline함수를 이용해 띄어쓰기는 포함하고 다음 줄이 나오기 전까지 즉, 한 문장을 입력받았습니다. 사용 예는 다음과 같다. #inclu..
https://www.acmicpc.net/problem/2108 2108번: 통계학 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. www.acmicpc.net 이번 문제는 N개의 수가 주어졌을 때 산술평균, 중앙값, 최빈값, 범위를 구해야 한다. 산술평균 : N개의 수들의 합을 N으로 나눈 값 중앙값 : N개의 수들을 증가하는 순서로 나열했을 경우 그 중앙에 위치하는 값 최빈값 : N개의 수들 중 가장 많이 나타나는 값 범위 : N개의 수들 중 최댓값과 최솟값의 차이 1. 평균은 입력받은 값들을 다 더해 데이터 개수로 나누면 된다. 2. 중앙값은 받은 데이터들을 오름..