반응형 전체 글149 [Android] Cannot resolve symbol "import android.annotation.Nullable" Android studio에서 다른 소스를 import 했을 때 발생했다. 빌드를 하면 @Nullable을 사용하는 소스에서 에러가 난다. Nullable을 인식하지 못해서 발생했는데 하기와 같이 수정해서 해결했다. 1) build.gradle에 implementation 'androidx.annotation:annotation:1.1.0' 추가 dependencies { implementation 'androidx.appcompat:appcompat:1.4.2' implementation 'com.google.android.material:material:1.6.0' implementation 'androidx.annotation:annotation:1.1.0' implementation 'androi.. 2023. 3. 3. [백준] 7576번 - 토마토 (Java)(○) https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 토마토를 보관하는 창고(N * M)이 있다. 칸 마다 토마토를 보관한다. 토마토는 익은 것과 덜 익은 것들이 섞여 있다. 보관 후 하루가 지나면 잘 익은 토마토의 상/하/좌/우에 있는 토마토들도 익게 된다. 토마토가 혼자서 익는 경우는 없고 반드시 영향을 받아서 익는다. 창고의 토마토들이 모두 익게 되는 최소 일수를 구하라. 상자의 일부 칸에 토마토가 없는 경우도 있다. 상하좌우로.. 2023. 3. 2. 구글서치콘솔에서 페이지 색인이 생성되지 않는 이유 티스토리 블로그에 게시물이 점점 쌓여감에도 불구하고 검색이 잘 되지 않는다. 이상하다고 생각되어 오랫만에 구글 서치 콘솔에 접속해보니 "현재 색인이 생성되지 않음"에 란에 페이지가 150개나 쌓여 있었다. 정확한 이유는 모르겠지만 중간에 카테고리를 새로 만들어서 게시물들을 이동한 적이 있는데 그 때문이 아닐까 의심이 된다. 일단 생성한 카테고리부터 색인 생성을 요청했다. 네이버 블로그와는 달리 티스토리 블로그는 신경 써줄게 많은 것 같다. 앞으로 카테고리를 중간에 바꾸는 것은 지양해야 겠다. 2023. 3. 2. 구글 애드센스 신청한 후기 구글 애드센스에 티스토리 블로그를 신청한 과정과 후기를 정리한다. 1. 구글 애드센스 홈페이지 방문 https://www.google.com/intl/ko_kr/adsense/start/ 우측 상단의 "시작하기"를 버튼을 눌러서 시작한다. 2. 구글 계정 연결 연결할 구글 계정을 입력한다. 3. 애드센스 연결을 위한 정보입력 a. 연결할 티스트리 블로그 주소 입력 b. 애드센스 활용은 '예' 선택 c. 국가는 '대한민국' 선택 d. 이용약관 '수락' 체크 4. 애드센스 관리화면 (1) 결제정보 입력 (2) 애드센스에 사이트 연결 이렇게 하면 신청이 완료 된다. 2주 후 애드센스 반려됨. 뭔가 싶어서 애드센스 사이트에 접속을 했더니 티스토리 블로그에 애드센스 광고용 html 스크립트를 추가하지 않았다고 나.. 2023. 3. 2. 알고리즘 풀이용 코드 스니펫(Java) 1. 회의들(시작시간, 종료시간)을 종료시간을 기준으로 오름차순 정렬하려면 static ArrayList A; class Meeting implements Comparable { int s, e; Meeting (int s, int e) { this.s = s; this.e = e; } @Override public int compareTo(Meeting o) { if (this.e == o.e) { // 종료시간이 같은 회의라면 return this.s - o.s; // 시작시간 작은 회의가 앞쪽에 위치 } else { return this.e - o.e; // 종료시간이 작은 회의가 앞쪽에 위치 } } } Collections.sort(A); 2023. 2. 23. [Android] 앱 버전명 관리 AndroidManifest.xml에서 앱의 버전명을 관리할 수 있다. 1) VersionName="String" - 사용자에게 보여주는 값으로 설정 - 앱 정보에서 확인할 수 있다. - 형식은 ..로 표현한다. ex) 1.0.1 2) VersionCode=Integer - 앱의 다운그레이드, 업그레이드를 위해 사용 - 사용자에게 보여지지 않는다. 2023. 2. 23. [Android] 딜레이 후에 실행하고 싶을 때 - Handler postDelayed 사용법 기능 확인용으로 test app을 만들고 있는데 frameworks의 api를 start / end를 호출하는 타이밍 문제가 있어서 start api를 호출하고 정확히 1초 뒤에 end api를 호출하기 위해 postDelayed를 사용했다. 자주 사용하는 기능은 아니라서 구현할 때마다 찾아보기 귀찮아서 기록하는 차원에서 남겨본다. testButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { startBVRA(); Handler handler = new Handler(); handler.postDelayed(new Runnable() { @Override public void run(.. 2023. 2. 20. 백트래킹 vs DFS 알고리즘 문제를 풀다보면 DFS인 것 같은데 백트래킹으로 분류된 문제들이 있다. 헷갈린 부분이 있어서 이번 기회에 확실히 정리를 하고 넘어가고자 한다. * DFS (깊이 우선 탐색) 가능한 모든 경로를 다 탐색한다. 따라서, 불필요한 경로도 무조건 끝까지 탐색을 하기 때문에 경우의 수를 줄이지는 못한다. * 백트래킹 (Back-tracking) 답을 찾아가는 도중, 지금의 경로가 답이 될 것 같지 않으면 더이상 진행하지 않고 윗단계로 되돌아간다. 이를 가지치기라고 하는데, 불필요한 경우의 수를 줄일 수 있으므로 시간복잡도를 개선할 수 있다. 문제풀이에서는 DFS로 모든 경우의 수를 완전탐색하는 과정 중에 조건문을 걸어서 답이 절대로 나올 수 없는 상황을 정의하고, 해당이 되면 탐색 중단 후 그 이전으로 .. 2023. 2. 19. 코딩테스트 입력값 받기 (1) 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 100) 둘째 줄부터 N개 줄에는 그림이 주어진다. 5 RRRBB GGBBB BBBRR BBRRR RRRRR void inputData() throws Exception { InputStreamReader reader = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(reader); StringTokenizer st = new StringTokenizer(br.readLine()); N = Integer.parseInt(st.nextToken()); map = new char[N][N]; for (int i=0; i 2023. 2. 18. 이전 1 2 3 4 5 6 7 8 ··· 17 다음 반응형