분류 전체보기 (112) 썸네일형 리스트형 프로그래머스 lv2 - 타겟넘버(Kotlin) https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 주어진 수들을 더하거나 빼서 target넘버를 만드는 경우의 수를 구하는 문제 dfs를 재귀함수로 구현하여 배열안의 값을 하나씩 더하거나 빼서 target과 같으면 경우의 수를++해주는 식으로 구현함 1. 경우의 수 계산 최악의 경우에 수행할 연산 횟수를 계산해서 재귀함수/완전탐색을 사용해도 될지 확인 시간복잡도 numbers의 최대 개수는 20개 이고 한 개당 가능한 경우의 수는 2가.. 싱글톤 패턴(Kotlin, java) 싱글톤 프로그램에서 클래스의 인스턴스를 단 하나만 만들어야 할 때 사용되는 디자인패턴 사용예시로는 데이터베이스를 변경할 수 있는 DBHandler 클래스의 인스턴스가 두 개 있어서 동시에 데이터베이스에 접근한다면 문제가 생길텐데(데이터베이스 동시성문제) 이를 방지할 수도 있습니다. 자바에서 싱글톤 구현 public class DBHandler { private static DBHandler instance; // 생성자 접근 차단 private DBHandler(){} public static DBHandler getInstance() { if(instance == null) { instance = new DBHandler(); } return instance; } } 먼저 private로 외부에서 생성.. 안드로이드에서 http통신(API 사용하기) 안드로이드에서 API를 사용하기 위한 필수 개념으로는 먼저 안드로이드에서 네트워크 통신하는 방법에 대해 알아야한다. 안드로이드에서 네트워크 통신? 안드로이드에서 서버에 데이터를 요청하고 받아온 데이터를 클라이언트 화면에 표시하는 것 클라이언트와 서버가 통신하는 방식은 주로 소켓연결, http 연결로 나뉨 소켓 연결 소켓 : 네트워크 상의 두 프로그램 사이에서 일어나는 양방향 통신 중 한 쪽의 엔드 포인트 클라이언트와 서버가 특정 포트를 통해 연결을 계속 유지 - 실시간 통신 가능 주로 스트리밍이나 온라인 게임에서 사용되는 연결방식 HTTP 연결 HyperText Transfer Protocol의 약자 80번 포트를 사용하여 웹 상에서 정보를 주고받을 수 있는 프로토콜 동작 방식 클라이언트가 서버에 헤더와.. 백준 2576 색종이-2(Kotlin) https://www.acmicpc.net/problem/2567 2567번: 색종이 - 2 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 www.acmicpc.net 문제 접근 검은색 영역의 둘레를 구하는 문제 하얀 영역은 0 검은 영역은 1로 처리 1에 인접한 0의 개수를 구하는 문제 정답 코드 import java.util.* fun main(args: Array): Unit = with(Scanner(System.`in`)) { //이차원 배열 위에 0과 1로 표시 val arr = Array(101){IntArray(101)} var n = next.. 백준 2246 - 콘도 선정(Kotlin) https://www.acmicpc.net/problem/2246 2246번: 콘도 선정 첫째 줄에 콘도의 개수를 나타내는 자연수 N(1 ≤ N ≤ 10,000)이 주어진다. 다음 N개의 줄에는 각 콘도에 대한 정보를 나타내는 두 정수 D(1 ≤ D ≤ 10,000), C(1 ≤ C ≤ 10,000)가 주어진다. D는 그 콘도의 www.acmicpc.net 문제 접근 입력값을 모두 비교해야되기때문에 배열로 저장 후보군이 될 수 없는 경우는 건너뛰어가며 가능한 경우의 수를 셈 정답 코드 import java.util.* fun main(args: Array): Unit = with(Scanner(System.`in`)) { val n = nextInt() //1. 더 가까운데 숙박비가 더 싼 경우 //2... 백준 1051-숫자 정사각형(Kotlin) https://www.acmicpc.net/problem/1051 1051번: 숫자 정사각형 N×M크기의 직사각형이 있다. 각 칸에는 한 자리 숫자가 적혀 있다. 이 직사각형에서 꼭짓점에 쓰여 있는 수가 모두 같은 가장 큰 정사각형을 찾는 프로그램을 작성하시오. 이때, 정사각형은 행 www.acmicpc.net 문제 접근 문제 조건에 맞는 정사각형 중 크기가 최대인 정사각형의 크기를 구하는 문제 한 변의 최대길이에서 점점 내려가며 조건을 만족하면 최대값을 비교하는 식으로 구현 근데 풀기전에 다른사람 코드를 봐버림... 정답 코드 import java.util.* import kotlin.math.max import kotlin.math.min //꼭짓점의 값이 모두 같은 가장 큰 크기의 정사각형 찾기 f.. 백준 2628 - 종이 자르기(Kotlin) https://www.acmicpc.net/problem/2628 2628번: 종이자르기 아래 과 같이 직사각형 모양의 종이가 있다. 이 종이는 가로방향과 세로 방향으로 1㎝마다 점선이 그어져 있다. 가로 점선은 위에서 아래로 1번부터 차례로 번호가 붙어 있고, 세로 점선 www.acmicpc.net 문제 접근 종이를 배열로 표현해서 자른 부분을 1로 처리한 다음 연속되는 0의 최대값을 곱해주면 됨 -> 어차피 한줄 끝까지 자르니깐 이차원 배열이 아닌 가로세로 각각 일차원 배열로 선언해서 연속되는 0의 개수의 최대값을 구하면 될듯? 정답 코드 import java.util.* fun main(args: Array): Unit = with(Scanner(System.`in`)) { val n = nextI.. 안드로이드 4대 컴포넌트 안드로이드 4대 컴포넌트 안드로이드 4대 컴포넌트란 한마디로 안드로이드 앱을 구성하는 4개의 구성요소를 말한다. 4대 컴포넌트로는 Activity, Service, BroadCast Receiver, Content Provider가 있다. 컴포넌트는 각자 고유한 기능을 수행한다. 각 컴포넌트는 인텐트를 통해 상호작용한다. Activity Activity는 사용자에게 실제로 보이는 화면을 의미한다. 사용자와 상호작용해야하므로 앱에는 반드시 하나 이상의 Activity가 존재해야한다. lifecycle관련 메소드를 활용해 원하는 기능을 구현한다.(lifecycle관련은 다음에..) 1개 이상의 View 또는 ViewGroup을 포함한다. Fragment는 컴포넌트(구성요소)가 아닌가? Frangment는 한.. 이전 1 ··· 10 11 12 13 14 다음