[프로그래머스/Kotlin]Level1 - 가운데 글자 가져오기
·
프로그래머스/Kotlin | Level1
코딩테스트 연습 - 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret programmers.co.kr 문제 설명 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 제한 조건 s는 길이가 1 이상, 100이하인 스트링입니다. ​입출력 예 s return "abcde" "c" "qwer" "we" ​ 나의 풀이 1. 문자열의 길이가 짝수이면 가운데 두개의 문자 출력 2. 문자열의 길이가 홀수이면 가운데 하나의 문자 출력 class Solution..
[프로그래머스/Java]Level1 - 가운데 글자 가져오기
·
프로그래머스/Java | Level1
코딩테스트 연습 - 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret programmers.co.kr 문제 설명 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 제한 조건 s는 길이가 1 이상, 100이하인 스트링입니다. ​입출력 예 s return "abcde" "c" "qwer" "we" ​ 나의 풀이 1. 입력받은 문자열 s의 크기와 절반 값을 저장하는 변수 생성 2. 문자열의 길이가 짝수이면 가운데 두개의 문자 출력 3. 문자열의 길..
[프로그래머스/Kotlin]Level1 - 최대공약수와 최소공배수
·
프로그래머스/Kotlin | Level1
코딩테스트 연습 - 최대공약수와 최소공배수 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 programmers.co.kr 문제 설명 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해보세요. 배열의 맨 앞에 최대공약수, 그 다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. 제한 조건 두 수는 1 이상 1000000 이하의 자연수입니다. ​입출력 예 n m return 3 12 [3,1..
[프로그래머스/Kotlin]Level1 - 약수의 합
·
프로그래머스/Kotlin | Level1
코딩테스트 연습 - 직사각형 별찍기 이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다. 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요. 제한 조건 n과 m은 각각 1000 이하인 자연수� programmers.co.kr 문제 설명 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 조건 n은 0 이상 3000 이하인 정수 ​입출력 예 n return 12 28 5 6 입출력 예#1 12의 약수는 1,2,3,4,6,12입니다. 이를 모두 더하면 28입니다. 입출력 예#2 5의 약수는 1,5입니다. 이를 모두 더하면 6입니다. 나의 풀이 1. 1부터 n까지의 숫자 중 n으로 나눴을 때 나누어 떨어지는 ..
[프로그래머스/Kotlin]Level1 - 자릿수 더하기
·
프로그래머스/Kotlin | Level1
코딩테스트 연습 - 자릿수 더하기 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한사항 N의 범위 : 100,000,000 이하의 자연수 입출 programmers.co.kr 문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한 조건 N의 범위 : 100,000,000 이하의 자연수 ​입출력 예 n answer 123 6 987 24 입출력 예#1 문제의 예시와 같습니다. 입출력 예#2 9 + 8 + 7 = ..
[프로그래머스/Java]Level1 - 실패율
·
프로그래머스/Java | Level1
코딩테스트 연습 - 실패율 실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스 programmers.co.kr 문제 설명 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스테이지 차이가 너무 큰 것이 문제였다. 이 문제를 어떻게 할까 고민 한 그녀는 동적으로 게임 시간을 늘려서 난이도를 조절하기로 했다. 역시 슈퍼 개발자라 대부분의 로직은 쉽게 구현했지만, 실패율을 구하는 부분에서 위기에 빠지고 말았다. 오렐리를 위해 실패율을 구하는 코드를 완..
Interface(인터페이스)
·
개발/개념 및 기법
인터페이스 개요 1. 인터페이스란? 사물과 사물 사이 또는 사물과 인간 사이의 경계에서, 상호 간의 소통을 위해 만들어진 물리적 매개체나 프로토콜 주로 컴퓨터 분야에서 사용되는 용어이며, I/F로 축약하여 사용 구분 : 하드웨어 인터페이스, 소프트웨어 인터페이스, 사용자 인터페이스 2. 인터페이스 특징 100% 추상 클래스 인터페이스의 모든 메소드는 자동으로 public abstract method 가 됨 추상 클래스(abstract class)와 구분하기 위해 선언 시에는 클래스(class) 키워드 대신 인터페이스(interface) 키워드를 사용 다형성 제공 상위 객체에 하위 객체를 참조하게 하여 신규로 추가되는 하위 객체에 대해서도 동일한 규약을 가지게 하는 것처럼 인터페이스(interface)도 ..
객체지향 프로그래밍 - 01. 추상화
·
개발/개념 및 기법
추상화 개요 1. 추상화란? 복잡한 자료, 모듈, 시스템 등으로부터 핵심적인 개념 또는 기능을 간추려 내는 것 공통의 속성이나 기능을 묶어 이름을 붙이는 것, 객체 지향 관점에 클래스를 정의하는 것을 추상화라 함 불필요한 부분을 생략하고 객체의 속성 중 가장 중요한 것에만 중점을 두어 개략화 하는 것 2. 추상화 특징 추상 클래스(Abstract Class)는 추상 메소드(Abstract Method)를 한 개 이상 포함해야함 추상 메소드 : 메소드의 원형만 정의된 독특한 메소드로 "abstract"키워드를 사용하며, 추상 클래스 내에서만 선언 추상 클래스는 직접 사용할 수 없으며, 반드시 다른 클래스에서 상속되어 추상 메소드를 오버라이딩 해야 사용이 가능 2-1. 추상화의 중요성 * 유지보수의 유리! ..
[Android/Basic]Fragment Life Cycle (프래그먼트 생명 주기)
·
Android/Android 기초
[Android 개념]Activity Life Cycle (액티비티 생명 주기) Fragment Life Cycle (프래그먼트 생명 주기) 사용자가 앱을 탐색하고 상호 작용할 때 프래그먼트는 추가, 제거, 화면 시작 또는 종료에 따라 생명 주기의 다양한 상태로 전환함 프래그먼트 생명 주기 상태 및 콜백 프래그먼트의 최대 상태는 FragmentManager에 의해 경정, 조각은 상태 이상으로 진행할 수 없음 FragmentTransaction의 일부를 사용하여 조각에 최대 생명 주기 상태 설정 가능 프래그먼트의 생명 주기 상태는 상위보다 클 수 없음 (ex. 상위 프래그먼트 또는 액티비티는 하위 프래그먼트보다 먼저 시작되어야함) 1. CREATED 1-1. onCreate() 프래그먼트를 생성할 때 호출..
[Android/Basic]Activity Life Cycle (액티비티 생명 주기)
·
Android/Android 기초
[Android 개념]Fragment Life Cycle (프래그먼트 생명 주기) Activity Life Cycle (액티비티 생명 주기) 사용자의 행동에 따라 앱의 Activity 인스턴스는 생명 주기 안에서 서로 다른 상태로 전환 Activity 클래스는 활동 상태 변화를 알아차릴 수 있는 여러 콜백을 제공 액티비티 생명 주기 단계 1. onCreate() 시스템이 먼저 활동을 생성할 때 실행 : 필수적으로 구현 활동의 전체 생명 주기 동안 한 번만 발생해야 하는 기본 애플리케이션 시작 로직을 실행 onCreate() 메서드 실행을 완료하면 시작됨 상태가 됨 주요 기능 사용자 인터페이스 선언(XML 레이아웃 파일 정의) 멤버 변수 정의 일부 UI 구성 등.. lateinit var textView:..
[Android/Basic]위치 퍼미션 (권한 설정)
·
Android/Android 기초
위치 퍼미션 (권한 허용) 위치 정보 엑세스 권한 유형 1. 포그라운드 위치 내비게이션 앱에서 사용자가 세부 경로 안내를 받을 수 있는 기능 메시지 앱에서 사용자가 현재 위치를 다른 사용자와 공유할 수 있는 기능 위 예시와 같이 앱에 위치 정보를 한 번만 또는 정의된 시간 동안 공유하거나 수신하는 기능이 포함되어 있으면 포그라운드 위치 정보 엑세스 원한 필요 ACCESS_COARSE_LOCATION : 도시 블록 내에 위치 정확성을 제공 ACCESS_FINE_LOCATION : ACCESS_COARSE_LOCATION을 요청할 때 제공되는 위치보다 더 정확한 위치를 제공 2. 백그라운드 위치 가족 위치 공유 앱에서 사용자가 가족 구성원과 지속적으로 위치를 공유할 수 있는 기능 IoT 앱에서 사용자가 집을..
[Android/Basic]SharedPreference (키-값 데이터 저장)
·
Android/데이터 저장 및 관리
SharedPreference란? 저장하려는 키-값 컬렉션이 비교적 작은 경우 SharedPreference API를 사용 키-값 쌍이 포함된 파일을 가리키며 키-값 쌍을 읽고 쓸 수 있는 간단한 메서드를 제공 해당 파일은 프레임워크에서 관리하며 비공개이거나 공유일 수 있음 1. 공유 환경설정의 핸들 가져오기 * 다음 메서드 중 하나를 호출하여 새로운 공유 환경설정 파일을 생성하거나 기존 파일을 엑세스 할 수 있음 getSharedPreference() : 첫번째 매개변수로 지정하는 이름으로 식별되는 여러 공유 환경설정 파일이 필요한 경우 이 메서드를 사용. 앱의 모든 Context에서 이 메서드를 호출할 수 있음 getPreference() : 활동에 하나의 공유 환경설정 파일만 사용해야 하는 경우 A..
[Android/Error]not permitted by network security policy
·
Android/에러 및 이슈 사항
참고 : https://gun0912.tistory.com/80 기존 Web 링크로 된 서버를 로컬 서버로 연결하려고 바꾸니 'not permitted by network security policy' 에러가 발생. 안드로이드 9.0(Pie) 버전 이상부터는 https를 기본값으로 지정했는데, http를 연결하려니 발생한 오류였음. 이때 http로 구축된 서버를 억지로 https로 바꾸면 time out 오류가 발생함. 아래 방법 중 하나를 선택하면 해결 가능함. (https가 아니어도 연결을 허용한다는 뜻) 1. AndroidManifest.xml 파일의 부분에 android:usesCleartextTraffic="true" 로 설정 2. res>xml 폴더에 network_security_config..
[Android/Basic]strings.xml이란?(문자열 리소스)
·
Android/Android 기초
문자열 리소스란? 문자열 리소스는 옵션 사항인 텍스트 스타일 지정 및 서식 지정 기능과 함께 애플리케이션에 사용할 수 있는 텍스트 문자열을 제공 문자열 : 단일 문자열을 제공하는 XML 리소스 문자열 배열 : 문자열로 구성된 배열을 제공하는 XML 리소스 수량 문자열(복수형) : 복수형 표시를 위해 여러 문자열을 포함하는 XML 리소스 1. 문자열 파일 위치 : res/values/filename.xml ( 요소의 name이 리소스 ID로 사용됨) 리소스 참조 : {Java}R.string.string_name, {XML}@string/string_name 구문 text_string 예 Hello! Kotlin : val string: String = getString(R.string.hello) Jav..
[Android/Error]This file does not belong to the project
·
Android/에러 및 이슈 사항
프로젝트를 복사한 뒤, 프로젝트 명을 바꾸고 xml 파일을 열어 디자인을 보려고 하니 This file does not belong to the project 라는 문구가 떴다. Project로 변경한 뒤 .idea 폴더에 있는 workspace 파일을 삭제한 뒤 Android Studio를 재실행해준다.
뿌꾸 빵
'분류 전체보기' 카테고리의 글 목록 (14 Page)