![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/BdxPJ/btsG6LHDrXJ/XrcrmFJGEBzAhe3DobA48K/img.png)
코트카타 직사각형 별찍기 문제 정답fun main(args: Array) { val (n, m) = readLine()!!.split(' ').map(String::toInt) for(i in 1..m){ for(j in 1..n){ print('*') } println() }}2중 for문을 활용해서 풀 수 있는 문제이다. n(가로 길이)만큼 반복해서 별을 출력한 뒤 반복문이 끝나면개행을 하는것을 m(세로 길이)만큼 반복하면 된다. 다른 풀이fun main(args: Array) { val (n, m) = readln().split(' ').map { it.toInt() } repeat(m) { repe..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/PF5Fi/btsG4ily5og/0QkH2FJDu5ivrqEYdoVfnk/img.png)
이 숫자는 뭘 의미할까 내 블로그에 들어가보면 좌측 탭 하단부분에 신경쓰이는 숫자들이 있다. 이 숫자 3개 말이다. 뭐라 검색해야 나오는지 몰라서 의문인 채로 있다가오늘 스킨편집하면서 알게되었다. 블로그 설정 > 스킨 편집 > html편집으로 들어가 해당 숫자에해당하는 부분을 찾아냈다. 해당 숫자는 블로그 총 조회수 카운터였다.첫번재 숫자는 어제자 조회수, 두번째 숫자는 오늘의 조회수,마지막 숫자는 총 조회수에 해당하는 숫자였다. 블로그 총 조회수와 세번째 숫자가 일치하는 걸 확인할 수 있다. 궁금즘 해결!
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bGbSPy/btsG6ZxNfDR/FOCg3LguHGqmEnAFdqW22k/img.png)
코드카타 문자열 내림차순으로 배치하기 문제 정답class Solution { fun solution(s: String): String { return s.toCharArray().sortedDescending().joinToString("") }}배열의 요소를 내림차순으로 정렬하는 함수 sortedDescending()을 활용하면 된다. 부족한 금액 계산하기 문제 정답class Solution { fun solution(price: Int, money: Int, count: Int): Long { var m: Long = money.toLong() for (i in 1..count) { m -= price * i ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/K3qch/btsG4TyGBxG/bCl4YZBg2tnb2W7S0kng5K/img.gif)
데이터 추가 및 삭제하기 SharedPreference 함수 추가하기 // 키값을 통해 Json 리스트 불러오기 static List> getJsonList(String key) { List? dataList = _prefs?.getStringList(key); return dataList ?.map((value) => json.decode(value) as Map) .toList() ?? []; } // Json 리스트 키에 저장하기 static Future setJsonList(String key, List> list) { List dataList = list.map((map) => json.encode(map)).toList(); ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cKwlWi/btsG5A5TLMm/mq9rYsRkR8VuZtbVwV4cl1/img.png)
코드카타 가운데 글자 가져오기 문제 정답class Solution { fun solution(s: String): String { val n = s.length if (n % 2 != 0) return s[n / 2].toString(); return s[n / 2 - 1].toString() + s[n / 2].toString(); }}정수의 나눗셈은 소수점 이하를 버린 결과를 반환한다. (5 / 2 > 2) s[n]의 자료형은 char에 해당하고 solution함수는 String형을 반환하므로 반환값을 String형으로 다 바꿔줘야 한다. // 짝수 길이의 문자열에서 중간 두 문자 추출s.substring(n / 2 - 1, n / 2 + 1)subS..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/BwI6h/btsG1id57dn/gCOeGSkCCeBBKwZBc8Hlek/img.png)
코드카타 음양 더하기 문제 정답class Solution { fun solution(absolutes: IntArray, signs: BooleanArray): Int { var res: Int = 0 for(i in 0 until absolutes.size){ if(signs[i]) res += absolutes[i] else res += absolutes[i] * -1 } return res }}for문 돌려서 해결하며 되는 문제이다. 0 until absolutes.size배열은 0번지 부터 시작하므로 (0 ~ 배열크기 - 1)의 범위로 for문을 돌려야한다. 핸드폰 번호 가리기 문제 정답c..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bERnXG/btsGTFaEXYK/SKTlBJMeghW7tmFr3XJh51/img.png)
코드카타 하샤드 수 문제 정답class Solution { fun solution(x: Int): Boolean { val sum = x.toString().map { it - '0' }.sum() return x % sum == 0 }}x를 문자열로 변환한 뒤 각 자릿수를 더한 값인 sum을 선언한다.x가 sum으로 나누어 떨어지는지를 판별하는 조건식을 반환한다. Boolean타입을 반환하는 함수에서 조건식을 반환하게 되면조건식이 참일 때는 true, 아닐 때는 false를 반환하게 된다. 두 정수 사이의 합 문제 정답class Solution { fun solution(a: Int, b: Int): Long { var n: Long = 0 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/xwQmY/btsGVgNhhyj/cyCKHMaUQdKE5bsmtR7k5k/img.png)
코드카타 나머지가 1이 되는 수 찾기 문제 정답class Solution { fun solution(n: Int): Int { for(i in 2..n){ if(n % i == 1) return i; } return 1; }}나머지가 1이 되도록 하는 가장 작은 자연수를 구해야하므로2 ~ n의 범위를 for문을 돌려 부터 시작 조건에 맞는 값을 반환하도록 한다. 전날에는 if문에도 중괄호를 씌웠는데 다른 언어와 마찬가지로if문의 중괄호에 들어가는 값이 1줄이라면 저런식으로 줄여서 쓸 수 있다. 컴파일러 조건 만족 return 1 은 이론적으로 도달할 수 없는 코드이지만모든 경로의 반환값을 요구하는 코틀린 컴파일러의 조건을 만족시키기 ..