코딩공부/프로그래머스
※[프로그래머스]Lv.1 대충 만든 자판 C#
usingsystem
2023. 6. 12. 10:17
728x90
https://school.programmers.co.kr/learn/courses/30/lessons/160586
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
소스코드
using System;
public class Solution
{
public int[] solution(string[] keymap, string[] targets)
{
int[] answer = new int[targets.Length];
int count = 0;
for (int i = 0; i < targets.Length; i++)
{
foreach (char c in targets[i])
{
count = FindMin(keymap, c);
if (count == -1)
{
answer[i] = -1;
break;
}
answer[i] += count;
}
}
return answer;
}
int FindMin(string[] keymap, char c)
{
int min = 9999;
for (int i = 0; i < keymap.Length; i++)
{
int idx = Array.IndexOf(keymap[i].ToCharArray(), c);
if (idx == -1)
continue;
if (min > idx)
min = idx;
}
return min == 9999 ? -1 : min + 1;
}
}
728x90