728x90
https://school.programmers.co.kr/learn/courses/30/lessons/42586
using System;
using System.Collections.Generic;
public class Solution {
public int[] solution(int[] progresses, int[] speeds) {
Queue<int> ans = new Queue<int>();
int[] cal = new int[speeds.Length];
for(int i= 0; i < speeds.Length; i++){
if (((100 - progresses[i]) % speeds[i]) == 0){
cal[i] = (100-progresses[i]) / speeds[i];
}
else {
cal[i] = (100-progresses[i]) / speeds[i] + 1;
}
}
int current = 0;
int amount = 0;
for (int i =0 ; i < progresses.Length; i++){
if (current < cal[i]) {
if (amount!=0){
ans.Enqueue(amount);
amount = 0;
}
amount++;
current = cal[i];
}
else {
amount++;
}
}
ans.Enqueue(amount);
int[] answer = new int[ans.Count];
int j = ans.Count;
for(int i = 0; i < j; i++){
answer[i] = ans.Dequeue();
}
return answer;
}
}
728x90
'공부 > C#' 카테고리의 다른 글
[C#] 프로그래머스 스택/큐 - 올바른 괄호 (0) | 2025.03.09 |
---|---|
[C#] 프로그래머스 스택/큐 - 프로세스 (0) | 2025.03.09 |
[C#] 코딩테스트에서 쓰는 함수 / 변수 (0) | 2025.03.07 |
[C#] 프로그래머스 백트래킹 - 피로도 (0) | 2025.03.07 |
[C#] 프로그래머스 백트래킹 - 소수 찾기 (0) | 2025.03.07 |