step 1 : Long타입변수.toString()\~~ 뭔가 처리를 한다 \~~step 2 : String(String타입변수).toLong()
숫자로 이루어진 문자열 t와 p가 주어질 때, t에서 p와 길이가 같은 부분문자열 중에서, 이 부분문자열이 나타내는 수가 p가 나타내는 수보다 작거나 같은 것이 나오는 횟수를 return하는 함수 solution을 완성하세요.숫자를 비교해야한다는 생각에 받을 변수 t,
양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해
1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될 때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다.1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고
명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니
첫 글자 대문자 / 첫 번째 단어 대문자MainActivity{}첫 글자 소문자 / 첫 번째 단어 대문자onCreateActivity()intValue: Int위의 캐멀 케이스와 달리 스네이크 케이스로 작성하는 경우도 있음소문자 / 언더바(\_)로 구분on_create
TIL-240227
어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요.foldInd
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 \*으로 가린 문자열을 리턴하는 함수, solution을 완성해주
0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.class Solution { fun s
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.with()의 활용with은 특정 객체를 활용하여 수행할 작업들을 그 객체 범위 내에서 실행할 수 있도록 하는 함수이다.고수의 풀이에서는
길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요.이때, a와 b의 내적은 a0b0 + a1b1 + ... + an-1\*bn-1 입니다. (n은 a, b의 길이)고수는 만들어져
두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.이번에도 고수는 map을 사용했다. 문
약 30개의 코딩테스트 연습 문제들을 풀어봤다.문제를 풀어나가면서 바로바로 어떤 방식들을 써야할지 캐치가 되어가고 있는데, 생각만 들고 실제로 구현에 활용하지 못하는 스킬들이 있다.map의 활용filter의 활용이번 회고에서는 위 항목들을 정리해보고자 한다.Kotlin
어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀면 "a"가 됩니다. 문자열 s와 거리 n을 입력받아 s를
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.주어지는 문자열의 크기를 먼저 검사하고, for 문으로 한 문자씩
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.arr1.zip(arr2) : 두 개의 2차원 배열을 z
네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다.다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다.1478 → "one4seveneight"234567
수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른쪽으로, 다른 선수는 제일
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.s에 한 캐릭터씩 접근한다. 그러다가
문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 "sun", "bed", "car"이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로
콜라를 받기 위해 마트에 주어야 하는 병 수 a, 빈 병 a개를 가져다 주면 마트가 주는 콜라 병 수 b, 상빈이가 가지고 있는 빈 병의 개수 n이 매개변수로 주어집니다. 상빈이가 받을 수 있는 콜라의 병 수를 return 하도록 solution 함수를 작성해주세요.바
Kotlin은 객체지향 프로그래밍 언어이다. 객체지향 프로그래밍에서 반드시 언급되는 키워드 중 추상화라는 것이 있다. 단어 자체는 많이 들어 봤지만, 추상화를 학습할 때 overriding, interface와 같은 개념들이 함께 언급되면서 머리 속을 복잡하게 한다.
min과 minOrNull 모두 컬렉션에서 최소값을 찾기 위해 사용되는 함수이다.블로그 포스팅을 보면 어떤 글에서는 .min()을 단독으로 사용하고, 어떤 글에서는 .minOrNull()을 사용한다.왜 그러는걸까? 본 파트에서는 위의 두 방법에 차이점에 대해 기술한다.
수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다.1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ...2번 수포자가 찍는
배경 캠프에서 과제로 계산기를 만드는 과정에서 연산자와 계산 항이 여러 개인 계산식을 처리하기 위해 후위연산식 처리가 필요했다. 내가 구현한 코드가 엉망진창이라 부끄럽기는 하지만.. 후위연산식 처리 부분에 대해서만 간단하게 소개를 하고, 튜터 선생님의 코드와 비교
주말에 공부한 Java랑 접근제한자의 이름과 용도가 조금 다른 것 같아서 정리해놓는다.Java 접근제한자 내용이 포함된 포스트 public: 명시하지 않으면 기본적으로 public 이다.private: 동일한 클래스 내부에서만 접근 가능하다.internal: 같은 모듈
개발 중에 프로그램을 실행하다보면 차마 설계해놓지 못했던 케이스를 마주하여 에러가 발생하는 경우가 종종 있다. 이럴 때 예외처리를 통해 실행 도중에 발생하는 예외를 적절하게 처리할 수 있다.물론 이 짓을 한다고 해도.. 모든 케이스에 대항할 수 있는 것은 아니지만, 예
숫자문자열Dog 클래스는 Animal 클래스를 상속하고 있다.main 함수에서 Dog 클래스의 인스턴스를 Animal 타입의 변수에 할당하고 있다. (업캐스팅)Animal 타입의 변수 animal은 실제로 Dog 클래스의 인스턴스를 참조하고 있지만, 컴파일러는 Anim
메소드는 기본적으로 하나의 데이터를 리턴한다.두 개 이상의 데이터를 포함하는 데이터클래스를 설계하면 두 개 이상의 인스턴스를 리턴할 수는 있기는 하지만, pair와 triple과 같은 데이터 클래스를 이용하면 효율적으로 처리할 수 있다.두 개의 값을 가지고 있는 데이터
Scope Functions란? 객체의 범위를 정의하여 코드 블록을 실행하는 다양한 함수들이 있다. 범위 Scope는 임시로, 코드를 편리하게 작성할 수 있도록 한다.
사전 지식 Timer 일정한 간격으로 작업을 스케쥴링하거나 특정 시간 후에 작업을 시작할 수 있도록 도와주는 클래스이다. 백그라운드 스레드에서 작업을 수행한다. 메인 스레드가 sleep 상태에 있어도 계속 실행된다. TimerTask Timer에 의해 스케쥴링되는
숫자나라 기사단의 각 기사에게는 1번부터 number까지 번호가 지정되어 있습니다. 기사들은 무기점에서 무기를 구매하려고 합니다.각 기사는 자신의 기사 번호의 약수 개수에 해당하는 공격력을 가진 무기를 구매하려 합니다. 단, 이웃나라와의 협약에 의해 공격력의 제한수치를
지난 포스팅에서 kotlin에서 예외처리 사용법에 대해 다뤘었다. 최근 콘솔창에서 작동하는 계산기와 키오스크를 구현하면서, 예외처리 작업을 하면서 자주 사용하게 되는 예외처리들이 있는 것 같아 이번 포스팅에서는 예외처리 종류를 알아보고 정리하고자 한다.발생 : null
로또의 최고 순위와 최저 순위요약 | 로또를 샀는데 동생이 낙서해놨다! 알아볼 수 없는 번호가 당첨 번호라면 최고, 최저 순위를 구하시오.최저 : 0 제외한 것들 중 매칭 되는 개수로 판단 가능최고 : 최저 등수와 0 개수로 판단 가능 (0 자리에는 매칭 값만 넣는 가
옹알이 (2)요약 | "aya", "ye", "woo", "ma"만 발음할 수 있는 조카가 발음할 수 있는 단어의 개수를 구하라. 조카는 네 가지 발음을 조합할 수 있으나, 연속해서 같은 발음은 할 수 없다..!babblin에 가능한 발음이 포함되어 있으면 공백으로 r
숫자 짝꿍요약 | 두 수에서 공통적으로 나타나는 수를 이용하여 가장 큰 수를 만들어보자.두 숫자 중 길고 짧은 숫자를 식별해 놓는다.동일한 숫자를 찾는데, 긴 숫자에서 짧은 숫자 중 포함(contains)하고 있는 숫자(문자)가 있으면 해당 숫자를 sameStr에 적립
배경 이번에는 캠프에서 과제로 이런 콘솔 키오스크를 만들어봤다. 이번 과제는 클래스 간 구조를 어떻게 짜고 관계를 맺게 할지가 참 어려운 과제였다. 이번 과제도 엉망이지만.. 덕분에 클래스에 대해 이해하고 구조를 어떻게 짜야하는지 충~분한 고민이 필요하다는 사실을
체육복(https://school.programmers.co.kr/learn/courses/30/lessons/42862요약 | n명의 학생이 있는데, 그 중 체육복을 도난 당한 학생과, 여벌의 체육복을 보유한 학생이 있다. 체육복은 번호 앞, 뒤 학생에게만
대충 만든 자판(https://school.programmers.co.kr/learn/courses/30/lessons/160586요약 | 여러 개의 키 값이 할당된 자판이 있다. 목표로 하는 문자열을 작성할 수 있는 최소한의 자판 눌림 횟수를 구하라.삼중 f
둘만의 암호요약 | 알파벳 목록에서 특정 문자를 뺐을 때, 주어지는 문자열의 알파벳 위치에서 index 숫자만큼 밀어낸 암호문 결과를 출력하라.목표는1\. s의 char에 하나씩 접근(it)2\. it의 아스키값 ~ it아스키값+index값 사이에 skip의 아스키값이
햄버거 만들기(https://school.programmers.co.kr/learn/courses/30/lessons/133502요약 | 햄버거는 1, 2, 3, 1 순서대로 1개를 만들 수 있다(1-빵, 2-야채, 3-고기). 제시되는 재료 배열에서 햄버거를
달리기 경주(https://school.programmers.co.kr/learn/courses/30/lessons/178871요약 | 선수들의 이름이 1등부터 현재 등수 순서대로 담긴 문자열 배열 players와 해설진이 부른 이름을 담은 문자열 배열 cal
공원 산책(https://school.programmers.co.kr/learn/courses/30/lessons/172928요약 | 공원을 나타내는 문자열 배열 park, 로봇 강아지가 수행할 명령이 담긴 문자열 배열 routes가 매개변수로 주어질 때, 로
신고 결과 받기(https://school.programmers.co.kr/learn/courses/30/lessons/92334요약 | 이용자의 ID가 담긴 문자열 배열 id_list, 각 이용자가 신고한 이용자의 ID 정보가 담긴 문자열 배열 report,
신고 결과 받기요약 | 위 그림처럼 노란 타일을 갈색 타일이 둘러싸는 구조일때, 노란 타일의 개수와 갈색 타일의 개수를 받아 전체 카펫의 크기를 구하여라.brown: Int8 ≤ brwon ≤ 5,000yellow: Int1 ≤ yellow ≤ 2,000,000카펫의
앱에서 하나의 인스턴스만을 갖도록 보장하는 객체클래스의 인스턴스가 오직 한 번만 생성되고, 그 인스턴스에 대해서는 전역적으로 접근이 가능해진다.리소스 낭비 최소화인스턴스가 한 번만 생성되기 때문에 메모리 및 자원의 낭비를 방지한다.공유 리소스 접근 용이여러 곳에서 동일
데이터 보내기 데이터를 특정 액티비티로 보낼 때 아래와 같이 작성한다. > "만약" 액티비티 간 데이터 전환이 수십번 일어난다면? 매번 저 코드 3줄을 적어주는 것 보다는 extension으로 저 3줄에 대한 행위를 미리 정의해두고, 필요한 액티비티에서 꺼내다가
n^2 배열 자르기처음에는 문제에서 주어지는 흐름대로 코드를 작성했다.처음 2차원 리스트를 생성할 때 내부 리스트 초기화를 n번 해야하고, 조건문에 따라 비교 연산도 해야한다.배열 이어 붙이기 파트에서는 위에서 초기화하면서 값이 추가된 initialList를 모두 순회