|
์ฝ๋ ์์ฑํ๊ธฐ
#include <string>
#include <vector>
using namespace std;
int check[105];
vector<int> solution(vector<int> pro, vector<int> speed) {
vector<int> ans;
int cur = 0, flag = 0;
//cur = ๋ฐฐํฌ๋ ๊ธฐ๋ฅ์ ์ = ๋ฐฐํฌ๊ฐ ์์๋์ด์ผํ ๋ฒํธ
//flag = ๋ฐฐํฌ ์ ์์ฑ๋ ๊ธฐ๋ฅ์ ๋ฒํธ
while (cur < pro.size()) {//๋ฐฐํฌ๋ ๊ธฐ๋ฅ์ ์๊ฐ ์์
์ ๊ฐฏ์๋ณด๋ค ์์ ๋์ loop
for (int i = cur; i < pro.size(); i++) { //์์
์ง๋ ์ฆ๊ฐ ์์
if (pro[i] >= 100)continue;
pro[i] += speed[i];
}
for (int i = cur; i < pro.size(); i++) {//์์
์ง๋ 100์ด์์ด ๋์ด ๋ฐฐํฌํ ์์
์ด ์๋์ง ์ฒดํฌ
if (pro[i] < 100)break;
flag = i + 1; // ์์ฑ๋์ด ๋ฐฐํฌ ์ค๋น๊ฐ ๋ ๊ธฐ๋ฅ
}
if (flag != cur) {//๋ฐฐํฌ ์ ์ด์ง๋ง ์์ฑ๋ ๊ธฐ๋ฅ์ด ์๋์ง
ans.push_back(flag - cur);//์์ฑ๋ ๊ธฐ๋ฅ ์ List์ ์ถ๊ฐ
cur = flag; //๋ฐฐํฌ ์๋ฃ
}
}
return ans;
}
C++
๋ณต์ฌ
|
์ฝ๋ ์ค๋ช
ํ๊ธฐ
โข
๋ชจ๋ ์์
๋ฒํธ 0โคi<N์ ๋ํ์ฌ progress[i]์ speeds[i]๋ฅผ ๋ํ๋ค
โข
์์ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๊ฐ ๋์ด์ผ ๋ค์ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๋ ์ ์์ผ๋ฏ๋ก ์์์๋ถํฐ ์งํ๋๊ฐ 100์ ๋๊ธด ๊ธฐ๋ฅ์ด ์๋์ง ํ์ธํด์ค๋ค.
โฆ
100์ ๋๊ธด ์์
์ด ์๋ค๋ฉด 100์ ๋๊ธด ์์
์ค ๋ง์ง๋ง ์์
์ flag์ ๊ธฐ๋ก
โข
flag์ cur๊ฐ์ด ๋ค๋ฅผ ๊ฒฝ์ฐ ๋ฐฐํฌ ์ ์ด์ง๋ง ์์ฑ๋ ๊ธฐ๋ฅ์ด ์๋ค๋ ๋ป์ด๋ฏ๋ก ์ถ๋ ฅํ List์ ์์ฑ๋ ๊ธฐ๋ฅ์ ์๋ฅผ add