본문 바로가기

Programming

백준 1904 자바 DP 풀이 01 타일은 동적 계획법으로 푸는 문제이다. 01 타일의 특이한 점은 n에 따른 증가폭이 어디서 본 것 같은 모양새로 증가한다. N = 1일 때 1개 (1) N = 2일 때 2개 (00, 11) N = 3일 때 3개 (100, 001, 111) N = 4일 때 5개 (0011, 0000, 1001, 1100, 1111 ) ..... 즉, 1,2,3,5,8.... 이런 식으로 증가하는 게 피보나치 증가하는 것처럼 보인다. 이때, 점화식이 dp [n] = dp [n-1] + dp [n-2] 이므로 그대로 적용하여 풀되 46번째부터 int 범위를 벗어나므로 15746으로 나누어 나머지를 저장한다. import java.io.*; public class t1904 { static final int mod = 1.. 더보기
[APIO 2010] 특공대 (Commando) 풀이 https://www.acmicpc.net/problem/4008 4008번: 특공대 입력은 세 줄로 구성된다. 첫 번째 줄에 전체 병사들 수인 양의 정수 n이 주어진다. 두 번째 줄에 특공대의 조정된 전투력 계산 등식의 계수인 세 정수 a, b, c가 주어진다. 마지막 줄에 병사들 1, 2, www.acmicpc.net Convex Hull Trick (CHT) 를 이용하는 대표 문제로써 2010년 출제 당시 학생들에게 충공깽을 선사했지만 지금은 국민문제가 되어버린 비운의 문제다. 우선 간단한 O(n3)O(n3), O(n2)O(n2) 해법을 간단히 소개하고 그 뒤 CHT 를 이용한 O(N)O(N) 해법을 소개하도록 하겠다. 1. O(N3)O(N3) 해법 간단한 다이나믹 프로그래밍으로 해결 가능하다. D.. 더보기
백준 2577 java 풀이과정 입력 받은 수, 결과 값의 자리 수 만큼 배열 생성. substring 이용. 한자리씩 잘라 넣음. (지금 생각해보니 %10 하면 substring 안써도 될듯...) for문 과 if 문 활용해서 j와 값이 같아질 때마다 countarr[해당숫자]에 +1씩 더 함. import java.io.*; public class t2577 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.o.. 더보기
2017 kakao blind test question_1 https://tech.kakao.com/2017/09/27/kakao-blind-recruitment-round-1/ public class question_1 { public static void main(String[] args) { int n = 5; int[] arr1 = {9, 20, 28, 18, 11}; int[] arr2 = {30, 1, 21, 17, 28}; //["#####","# # #", "### #", "# ##", "#####"] String[] result = new String[n]; //type #1 for (int i = 0; i < n; i++) { int arr = arr1[i] | arr2[i]; System.out.println(""+Integer.toBinar.. 더보기
Glide 라이브러리 간단한 사용방법 + 비트맵으로받기 이번에 이미지가 있는 URL을 파싱해와서 이 URL을 어떻게 이미지로 받아서 사용할 수 있을까 하다가 Glidle 라이브러리를 써서 이미지가 있는 URL을 이미지로 변환하여 사용할 수 있었다. 물론 Glide말고도 스퀘어사에서 만든 Picasso 라이브러리도 있다. 둘이 비교하면 용량이적고 빠른건 Glide이고 용량과 상대적으로 조금더 느리지만 화질이 좋은건 Picasso라고한다. 잘 비교해서 더 필요한걸 사용하면 좋을 것 같다. Glide 사용방법에 대해 간단하게 정리해보았다. Glide.with(this).load(imgUrl).into(imgView); //Glide을 이용해서 이미지뷰에 url에 있는 이미지를 세팅해줌 * imgUrl > String형 이미지 주소를 가짐 * imgView > im.. 더보기
개발 모드시 광고가 노출되지 않을때, Failed to load ad: 3 MobileAds.initialize(context, context.getString(R.string.admob_id)) adRequest = AdRequest.Builder().build() mInterstitialAd = InterstitialAd(context).apply { adUnitId = context.getString(R.string.admob_interstitial_id) adListener = object : AdListener() { override fun onAdLoaded() { DLog.w("admob onAdLoaded !!") showAd() } override fun onAdClosed() { DLog.w("admob onAdClosed !!") } override fun .. 더보기
App is not indexable by Google Search AndroidManifest.xml 에서 아래와 같은 경고가 발생하는 것을 볼 수 있다. App is not indexable by Google Search; consider adding at least one Activity with an ACTION-VIEW intent filter. See issue explanation for more details. 이 경고를 해결하는 법은 아주 간단하다. 아래의 소스처럼 android.intent.action.VIEW 액션을 한 줄 추가해준다. 저 경고를 좀 더 살펴보면 아래와 같은 메세지를 볼 수 있다. App is not indexable by Google Search; consider adding at least one Activity with an AC.. 더보기
클래스, 객체, 인스턴스의 개념과 그 차이 클래스, 객체, 인스턴스의 개념과 그 차이를 설명할 수 있다. Goal 클래스, 객체, 인스턴스의 개념을 설명할 수 있다. 클래스, 객체, 인스턴스의 차이를 이해할 수 있다. 클래스, 객체, 인스턴스의 개념 클래스(Class) 란 개념 객체를 만들어 내기 위한 설계도 혹은 틀 연관되어 있는 변수와 메서드의 집합 객체(Object) 란 개념 소프트웨어 세계에 구현할 대상 클래스에 선언된 모양 그대로 생성된 실체 특징 ‘클래스의 인스턴스(instance)’ 라고도 부른다. 객체는 모든 인스턴스를 대표하는 포괄적인 의미를 갖는다. oop의 관점에서 클래스의 타입으로 선언되었을 때 ‘객체’라고 부른다. 인스턴스(Instance) 란 개념 설계도를 바탕으로 소프트웨어 세계에 구현된 구체적인 실체 즉, 객체를 소프.. 더보기