728x90
https://school.programmers.co.kr/learn/courses/30/lessons/154538
소스코드
using System;
using System.Collections.Generic;
public class Solution
{
public int solution(int x, int y, int n)
{
int answer = 0;
List<int> targets = new List<int>
{
x
};
List<int> results = new List<int>();
HashSet<int> sames = new HashSet<int>();
while (targets.Count > 0)
{
if (targets.Contains(y))
return answer;
answer++;
results.Clear();
foreach (var item in targets)
{
sames.Add(item);
int a = item + n;
int b = item * 2;
int c = item * 3;
if (a <= y && sames.Contains(a) == false)
results.Add(a);
if (b <= y && sames.Contains(b) == false)
results.Add(b);
if (c <= y && sames.Contains(c) == false)
results.Add(c);
}
List<int> temp = targets;
targets = results;
results = temp;
}
return -1;
}
}
728x90
'코딩공부 > 프로그래머스' 카테고리의 다른 글
※[프로그래머스]Lv.2 롤케이크 자르기C# (순차적으로 줄여나가기) (0) | 2023.07.07 |
---|---|
※[프로그래머스]Lv.2 귤 고르기C# (Dictionary.TryAdd 중복 카운터) (0) | 2023.07.07 |
※[프로그래머스]Lv.2 뒤에 있는 큰 수 찾기 C# (시간복잡도오류, 스택) (0) | 2023.07.07 |
[프로그래머스]Lv.2 무인도 여행 C#(BFS) (0) | 2023.07.04 |
※[프로그래머스]Lv.2 호텔 대실 C# (0) | 2023.06.30 |