https://school.programmers.co.kr/learn/courses/30/lessons/120903
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
fun main() {
var s1 = arrayOf("a","b","c")
var s2 = arrayOf("com","b","d","p","c")
var s3 = mutableListOf<String>()
for(i in s1){
for (j in s2)
{
if (i == j ){
s3.add(j)
}
}
}
println("${s3.size}")
}
class Solution {
fun solution(s1: Array<String>, s2: Array<String>): Int {
var answer: Int = 0
var s3 = mutableListOf<String>()
for(i in s1){
for(j in s2){
if( i ==j){
s3.add(j)
}
}
}
answer =s3.size
return answer
}
}
해당 문제는 상당히 간단하게 풀 수 있다.
중첩 for문으로 s1과 s2의 배열을 비교한 뒤 중복된 배열의 요소를 리스트 s3에 저장한 뒤 s3의 size를 반환하면 된다.
즉 answer = s3.size로 하면 바로 해결되는 문제다.
다른 방식으로도 풀 수 있는데
fun main() {
var s1 = arrayOf("a","b","c")
var s2 = arrayOf("com","b","d","p","c")
var s3=0
for(i in s1){
for (j in s2)
{
if (i == j ){
s3++
}
}
}
println("${s3}")
}
s3를 list가 아닌 int형 변수로 두고 0부터 시작해서 if탐색이 끝날 때 마다 ++를 해서 빈도를 찾을 수 있다.
이는 빈도수만 찾기에는 int가 좀 더 알맞는 형태일 것 이다.
'개발노트 > 프로그래머스' 카테고리의 다른 글
프로그래머스 문자 정렬하기(2) 코틀린 (0) | 2023.08.03 |
---|---|
프로그래머스 숫자찾기 코틀린 (0) | 2023.08.02 |
인덱스 바꾸기 코틀린 (0) | 2023.07.31 |
대문자와와 소문자 코틀린 (0) | 2023.07.31 |
중복된 문자 제거하기 코틀린 (0) | 2023.07.31 |