- ๋ฌธ์
ํ๋ก๊ทธ๋๋จธ์ค ํ์์๋ ๊ธฐ๋ฅ ๊ฐ์ ์์ ์ ์ํ ์ค์ ๋๋ค. ๊ฐ ๊ธฐ๋ฅ์ ์ง๋๊ฐ 100%์ผ ๋ ์๋น์ค์ ๋ฐ์ํ ์ ์์ต๋๋ค.
๋, ๊ฐ ๊ธฐ๋ฅ์ ๊ฐ๋ฐ์๋๋ ๋ชจ๋ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋ค์ ์๋ ๊ธฐ๋ฅ์ด ์์ ์๋ ๊ธฐ๋ฅ๋ณด๋ค ๋จผ์ ๊ฐ๋ฐ๋ ์ ์๊ณ , ์ด๋ ๋ค์ ์๋ ๊ธฐ๋ฅ์ ์์ ์๋ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๋ ๋ ํจ๊ป ๋ฐฐํฌ๋ฉ๋๋ค.
๋จผ์ ๋ฐฐํฌ๋์ด์ผ ํ๋ ์์๋๋ก ์์ ์ ์ง๋๊ฐ ์ ํ ์ ์ ๋ฐฐ์ด progresses์ ๊ฐ ์์ ์ ๊ฐ๋ฐ ์๋๊ฐ ์ ํ ์ ์ ๋ฐฐ์ด speeds๊ฐ ์ฃผ์ด์ง ๋ ๊ฐ ๋ฐฐํฌ๋ง๋ค ๋ช ๊ฐ์ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๋๋์ง๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํ์ธ์.
- ์ฝ๋
#include <iostream>
#include <vector>
#include <stack>
using namespace std;
vector<int> solution(vector<int> progresses, vector<int> speeds) {
int due; //์์
๊ธฐ๊ฐ
stack<int> s;
vector<int> answer;
for (int i = (progresses.size()-1); i >= 0 ; i--) { // progresses size ๋งํผ ๋ฐ๋ณต
// ์ฐ์ฐ
due = ((100 - progresses[i]) / speeds[i]);
if (((100 - progresses[i]) % speeds[i]) != 0) {
// ๋๋จธ์ง๊ฐ ์กด์ฌํ๋ค๋ฉด
due++;
}
s.push(due);
}
//ํ๋ฒ์ ๋ฐฐํฌ๋๋ ๊ธฐ๋ฅ์ ๊ฐ์ ์ฐ์ฐ
while (!s.empty()) { //์คํ์ด ๋น ๋๊น์ง ๋ฐ๋ณต
int num = 0; //ํ๋ฒ์ ๋ฐฐํฌ๋๋ ๊ธฐ๋ฅ์ ๊ฐ์
int top = s.top();
while (!s.empty() && s.top() <= top) {
num++;
s.pop();
}
answer.push_back(num);
}
return answer;
}
- ํด์ค
1. solution(vector<int> progresses, vector<int> speeds)
- ๊ฐ ๋ฐฐํฌ๋ง๋ค ๋ช๊ฐ์ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๋๋์ง๋ฅผ return ํ๋ ํจ์
: ์์ ๊ธฐ๊ฐ ๋ณ์์ ์คํ ๋ฐ ์ถ๋ ฅํ answer ๋ฒกํฐ ๋ฐฐ์ด์ ์ ์ธ
: for๋ฌธ์ ํตํด progresses size ๋งํผ ๊ฐ ์์ ์ ๊ฑธ๋ฆฌ๋ ๊ธฐ๊ฐ ์ฐ์ฐ ๋ฐ๋ณต
: due ๋ฅผ ๊ณ์ฐ
: ๋ง์ฝ (100 - progresses[i])๋ฅผ speeds[i]๋ก ๋๋์์ ๋ ๋๋จธ์ง๊ฐ ์กด์ฌํ๋ค๋ฉด ์์ ๊ธฐ๊ฐ์ด ํ๋ฃจ ๋ ํ์ํ๋ฏ๋ก due 1 ์ฆ๊ฐ
: ๊ทธ๋ฆฌ๊ณ ์์ ๊ธฐ๊ฐ์ ์คํ์ ์ฝ์
: ๊ฐ ์์ ์ ๋ํ due๋ฅผ ๋ชจ๋ ๊ณ์ฐํ๋ค๋ฉด ์คํ์ด ๋น ๋๊น์ง ํ๋ฒ์ ๋ฐฐํฌ๋๋ ๊ธฐ๋ฅ์ ๊ฐ์ ์ฐ์ฐํ๋ ๊ณผ์ ๋ฐ๋ณต
: ํ ๋ฒ์ ๋ฐฐํฌ๋๋ ๊ธฐ๋ฅ์ ๊ฐ์๋ฅผ num์ผ๋ก ๋๊ณ 0์ผ๋ก ์ด๊ธฐํ
: ์คํ์ top์ ๊ธฐ์ค์ ์ผ๋ก ์ผ๊ณ ์คํ์ด ๋น์ง ์๊ณ ์คํ์ top์ด ๊ธฐ์ค์ ๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค๋ฉด num์ ์ฆ๊ฐ ์ํค๊ณ ๊ทธ due๋ฅผ ์ ๊ฑฐ, ์ด๋ฅผ while๋ฌธ์ผ๋ก ๋ฐ๋ณต
: ๊ทธ๋ฆฌ๊ณ num ๊ณ์ฐ์ด ๋๋๋ฉด ์ด๋ฅผ answer ๋ฒกํฐ ๋ฐฐ์ด์ ์ถ๊ฐ
: ๋ง์ง๋ง์ผ๋ก answer ๋ฒกํฐ ๋ฐฐ์ด์ return
'์๊ณ ๋ฆฌ์ฆ ๐ฉ๐ปโ๐ป > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ๋์๋ฌธ์ ๋ฐ๊ฟ์ ์ถ๋ ฅํ๊ธฐ (0) | 2024.03.14 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ๋ฌธ์์ด ๋ฐ๋ณตํด์ ์ถ๋ ฅํ๊ธฐ (0) | 2024.03.14 |
[ํ๋ก๊ทธ๋๋จธ์ค] a์ b ์ถ๋ ฅํ๊ธฐ (0) | 2024.03.14 |
[ํ๋ก๊ทธ๋๋จธ์ค] ๋ฌธ์์ด ์ถ๋ ฅํ๊ธฐ (0) | 2024.03.13 |
#๋์คํฌ์ปจํธ๋กค๋ฌ (0) | 2023.03.30 |