๐
2025-08-08
๋ฌธ์ ๋งํฌ
๋ฌธ์ ์ค๋ช
ํธ๋ญ ์ฌ๋ฌ ๋๊ฐ ๊ฐ์ ๊ฐ๋ก์ง๋ฅด๋ ์ผ์ฐจ์ ๋ค๋ฆฌ๋ฅผ ์ ํด์ง ์์ผ๋ก ๊ฑด๋๋ ค ํฉ๋๋ค. ๋ชจ๋ ํธ๋ญ์ด ๋ค๋ฆฌ๋ฅผ ๊ฑด๋๋ ค๋ฉด ์ต์ ๋ช ์ด๊ฐ ๊ฑธ๋ฆฌ๋์ง ์์๋ด์ผ ํฉ๋๋ค. ๋ค๋ฆฌ์๋ ํธ๋ญ์ด ์ต๋ bridge_length๋ ์ฌ๋ผ๊ฐ ์ ์์ผ๋ฉฐ, ๋ค๋ฆฌ๋ weight ์ดํ๊น์ง์ ๋ฌด๊ฒ๋ฅผ ๊ฒฌ๋ ์ ์์ต๋๋ค. ๋จ, ๋ค๋ฆฌ์ ์์ ํ ์ค๋ฅด์ง ์์ ํธ๋ญ์ ๋ฌด๊ฒ๋ ๋ฌด์ํฉ๋๋ค.
์ ํ์ฌํญ
bridge_length๋ 1 ์ด์ 10,000 ์ดํ์
๋๋ค.weight๋ 1 ์ด์ 10,000 ์ดํ์
๋๋ค.truck_weights์ ๊ธธ์ด๋ 1 ์ด์ 10,000 ์ดํ์
๋๋ค.weight ์ดํ์
๋๋ค.ํ๋ฅผ ๋ค๋ฆฌ ๊ธธ์ด๋งํผ 0์ผ๋ก ์ด๊ธฐํํ ํ ๋งค์ด ๋ค๋ฆฌ ์์ ์ํฉ์ ๋ง์ถฐ pop๊ณผ push๋ฅผ ์ฌ์ฉํด ๊ณ์ฐํ๋ค.
๋ค๋ฆฌ์ ๋ง์ง๋ง ํธ๋ญ์ด ์ฌ๋ผ๊ฐ ํ ์ด ๋ฌด๊ฒ๊ฐ 0์ด ๋๋ ์๊ฐ์ ์ข
๋ฃ ์์ ์ผ๋ก ๋ดค๋ค.
#include <queue>
#include <vector>
using namespace std;
int solution(int bridge_length, int weight, vector<int> truck_weights) {
int answer = 0;
queue<int> bridge;
// ํ 0์ผ๋ก ์ด๊ธฐํ
for(int i=0; i<bridge_length; i++)
{
bridge.push(0);
}
int total_weight=0;
int i=0;
bool isFinished = false;
while(!isFinished)
{
for(int j=0; j<bridge_length; j++)
{
answer++;
total_weight-=bridge.front();
bridge.pop();
// ์ข
๋ฃ ์กฐ๊ฑด
if(i==truck_weights.size() && total_weight == 0)
{
isFinished = true;
break;
}
if(i<truck_weights.size() && total_weight + truck_weights[i]<=weight)
{
total_weight+=truck_weights[i];
bridge.push(truck_weights[i]);
i++;
}
else bridge.push(0);
}
}
return answer;
}
1.1 ํ๋ ๋ ํผ๋ฐ์ค
ํด๋์ค์ ๋ฏธ๋ฆฌ ์ ์ํ๋ ๊ฒ. ์ ์๋์ด ์๋ ๊ฒ๋ค์ ๋ชจ๋ ํญ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ก๋๋๋ค.
์ฒ์๋ถํฐ ํ์ํ์ง ์์ ๊ฒ๋ค๋ ๋ค ๋ฏธ๋ฆฌ ๋ก๋๋์ด ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ถ์กฑํด์ง ์ ์๋ค.
1.2 ์ํํธ ๋ ํผ๋ฐ์ค
TSoftObjectPtr<type>: ๊ฒฝ๋ก๋ง ์ ์ฅํ๊ณ ํ์ํ ๋ ๋ก๋ํ๋ค.
1.3 ์ฌ์ฉ๋ฒ
๋๊ธฐ ๋ก๋
๊ฒฝ๋ก์ ํด๋นํ๋ ๋ฆฌ์์ค๋ฅผ ์ฆ์ ๋ก๋ํ๋ค. ๋ก๋ํ๋ ์๊ฐ ๋์์ ํด๋น ํ๋ ์์ด ๋ฉ์ถ ์ ์๋ค.
๋ก๋ฉ ํ๋ฉด์ด๋ ๋ฉ๋ด์ฒ๋ผ ์ด์ฐจํผ ๋ฉ์ถฐ๋ ๋๋ ์์ ์ ์ฌ์ฉํ๋ค.
๋น๋๊ธฐ ๋ก๋
๋ฐฑ๊ทธ๋ผ์ด๋์ ๋ก๋๋ฅผ ์์ฒญํ๊ณ ๋ก๋ ๋๋ฌ์ ๋ ์ฝ๋ฐฑ์ ๋ฐ์์ ์ ์ฉํ๋ค. ๊ฒ์ ์งํ์ ์ํฅ์ ์ฃผ์ง ์๋๋ค.
1.4 ํ์
TSoftObjectPtr<type>TSoftClassPtr<type>2.1 Primary Asset
์์
๋งค๋์ ๊ฐ ํน๋ณ ๊ด๋ฆฌํ๋ ์ค์ ์์
2.2 Bundle System
Primary Asset๋ค์ ์ฉ๋๋ณ๋ก ๋ฌถ์ด์ ๊ด๋ฆฌํ๋ค.
3.1 ๊ฐ ์ถ์ถ
ํ๋ ์ฝ๋ฉ๋ ์ซ์๋ฅผ ์ธ๋ถ ํ์ผ๋ก ๋ถ๋ฆฌํ๋ ๋จ๊ณ
๊ตฌ์กฐ์ฒด๋ก ์ ์ํ์ฌ ๋ฐ์ดํฐ ํ
์ด๋ธ์ ๋ง๋ค๊ณ ๋ฐ์ดํฐ๋ฅผ CSVํ์ผ์ ์ ์ฅํ๋ ๋ฐฉ์์ด๋ค.
๋์์ด๋๊ฐ CSVํ์ผ์ ๋ฐ์ดํฐ๋ง ์์ ํด์ ์์
ํ ์ ์๋ค.
3.2 ๋์ ์ถ์ํ
ํ๋ ๋ฐฉ์์ ๋ฐ์ดํฐ๋ก ๊ต์ฒดํ๋ ๋จ๊ณ
๋์์ ๋
๋ฆฝ๋ ํด๋์ค๋ก ๋ง๋ ๋ค. -> ์ด๋น๋ฆฌํฐ
3.3 ์ ์ ๋ฐ์ดํฐํ
๊ฒ์ ์์ฒด๋ฅผ ๋ฐ์ดํฐ๋ก ์ ์ -> Experience
์ถ์ฒ ํ๋ก๊ทธ๋๋จธ์ค: ๋ค๋ฆฌ๋ฅผ ์ง๋๋ ํธ๋ญ
์ถ์ฒ: ์คํ๋ฅดํ์ฝ๋ฉ ๋ด์ผ๋ฐฐ์์บ ํ