-> ๋ชจ๋๋ฌ ์ฐ์ฐ๊ณผ ๋ชซ ๊ณ์ฐ์ ํตํด ์ฒ๋ฆฌํด์ผ ํจ.
1) ์๊ฐ๋ณต์ก๋๋ฅผ ์ต์ ์ผ๋ก ์ค์ ํด์ ์๊ฐ์ ํด๋ณด์.
2) ๋ด๊ฐ ๊ตฌํํ๊ณ ์ ํ๋ ํ๋ก์ธ์ค๋ฅผ ๋จผ์ ์๊ฐ์ ํด๋ณด๊ณ !
์ ๋ ฅ๊ฐ ๋ฟ๋ง ์๋๋ผ, ๋ฐ๋ก์ ๋ํด ์๊ฐ์ ํด๋ณด์.
-> ํ๋ก์ธ์ค์ ๋ฐ๋๋๋ ์ ๋ ฅ์ ๋ํด ์๊ฐ์ ํด๋ณด์.
: ๋๋ ํ๋ฒ์ ํด ๋์์๋ง ์๊ฐ์ ํ๋๋ฐ, ๋ค์ ํด์์ ๋จ์ hp๋ก ์๋ํด์ผ ํ ํ ๋ฐ?? ๋ผ๋ ์๊ฐ์ ํด์ผํจ.
: ๋ด๊ฐ ๋ง๋ ํ๋ก์ธ์ค๋ฅผ ํตํด, ๋ค๋ฅธ ์
๋ ฅ์ด ๋ค์ด์์ ๋๋ฅผ
์๊ฐํด๋ณด์.
: ๋ด๊ฐ ๊ตฌํํ ๊ฒ์ ํ ํด๋น ์ด์๋จ๊ธฐ ์ํ ๊ฒ์ ํํํ ๊ฒ์.
๊ทผ๋ฐ, ์๋์ ์
๋ ฅ๊ฐ์ด ๋ค์ด์จ๋ค๊ณ ํ๋ฉด, ๋ถ๊ฐ๋ฅํจ.
๊ณ์ ๋์ ๋๋ ๊ฒ์ ์ฒ๋ฆฌํด์ผ ํจ.
3 3
1 1 20
1 3 100
1 3 100
: ๊ตฌํ์ผ๋ก ํ
#include <algorithm>
#include <string>
#include <vector>
#include<iostream>
using namespace std;
#include <queue>
//๋๋๊ณค ์ค ๋์
// 15:41 ~ 16:21
// 100 ์ 6์ผ๋ก ๋๋๋ ์๋ชปํจ. -> ์๋ชป ๊ณ์ฐํจ.
int main()
{
//์ต๋ ์๋ช
๋ น : ๋ณํ์ง ์์.
// ํ์ฌ ์๋ช
๋ น : ์ต๋์๋ช
๋ ฅ์ด ํ๊ณ์
// ์ฉ์ฌ ๊ณต๊ฒฉ
// t๊ฐ 1์ธ ๊ฒฝ์ฐ์๋ ๊ณต๊ฒฉ a์ด๊ณ ์๋ช
๋ ฅ์ด h์ธ ๋ชฌ์คํฐ๊ฐ ์์.
// t๊ฐ 2์ธ ๊ฒฝ์ฐ์๋ ์ฉ์ฌ์ ๊ณต๊ฒฉ๋ ฅ์ ์ฆ๊ฐ์์ผ์ฃผ๋ a๋งํผ์
// ํฌ์
๊ณผ h๋งํผ ํ๋ณต์์ผ์ฃผ๋ ํฌ์
์ด ์์.
// 7๋ฒ๊น์ง ์ด์์ผ ํจ.
// 1๋ฒ. 1 * (7 - 1)
// 2๋ฒ. ๊ณต๊ฒฉ๋ ฅ 3 ์ฆ๊ฐํจ. ์๋ช
๋ ฅ 10์ฆ๊ฐํจ. -> ๊ณต๊ฒฉ๋ ฅ 6๋จ.
// 3๋ฒ. 17๋ฒ์งธ๊น์ง ์ด์์ผ ํจ. // 100 / 6 -> 17๋ฒ.
// (17 - 1) * 3 => 48
// 6 + 48 : 54
// 2๋ฒ์งธ ์์
//๊ณต๊ฒฉ๋ ฅ 1์.
// ์๋๋ฐฉ ๊ณต๊ฒฉ๋ ฅ์ 100๋ง์, ์๋๋ฐฉ ์๋ช
๋ ฅ์ 100๋ง์.
// 100๋ง๋ฒ์งธ๊น์ง ์ด์์ผ ํจ.
// (100๋ง - 1)* 100๋ง + 1// ์ต์ํ์ผ๋ก ์ด์์ผ ํ๋ฏ๋ก. +1 ์ถ๊ฐํจ.
// 1๋ฒ์งธ ์์
//48
// 7๋ฒ ์ด์์ผ ํ๋ฏ๋ก, ์๋๋ฐฉํ๋ฐ (7 - 1) * 1 : 6์ ๋ฐ๋ฏธ์ง ๋ฐ์.
// -> ์ต์ 6 + 1์ ์๋ช
๋ ฅ ์์ด์ผ ํจ.
// ๊ณต๊ฒฉ๋ ฅ 6์, ์๋ช
๋ ฅ์ + 10 ์ฆ๊ฐํจ.
// 100 / 6 -> 14๋ฒ ํด๊น์ง ์ด์์ผ ํจ. (16 - 1) * 3 : 45
// ์ต์ 45 + 1์ ์๋ช
๋ ฅ ์์ด์ผ ํจ.
// 46
//42 + 10 -> 48
// 48 , 6 // 13 * 3 + 1
// 7๋ฒ ๋ง๋๋ผ๊ณ + 1 : 8
// 17๋ฒ ๋ง๋๋ผ๋ + 1 : 17 * 3 + 1 : 52
// 6๋ฒ ๋ง๋๋ผ๊ณ + 1 : 7
// 16๋ฒ ๋ง๋๋ผ๋ + 1 : 16 * 3 + 1 : 49
int n, atk;
cin >> n >> atk;
// 2๊ฐ ๋์์ ๋๋ ๊ณต๊ฒฉ๋ ฅ ์ฌ๋ ค์ฃผ๋ ๊ฒ๋ง ์ค์ํจ.
long long res = -1;
for (int i = 0; i < n; ++i)
{
int t, atkk, hpp;
cin >> t >> atkk >> hpp;
if (t == 2)
{
atk += atkk;
}
//๋์ ์
์ฅ.
else
{
//๋ชฌ์คํฐ๋ฅผ ๋ช๋ฒ ํด์ ์ฃฝ์ผ ์ ์๋์ง.
long long mock = hpp / atk;
// ๋๋จธ์ง๊ฐ ์์๋์ ๋๋จธ์ง๊ฐ ์์ ๋์ ์ฐจ์ด์ ์ด ์กด์ฌํจ.
int namuji = hpp % atk;
if (namuji == 0)
mock--;
// ๋ชฌ์คํฐ๊ฐ ๋๋ฅผ ๋ช๋ฒ ํด - 1 // * ๊ณต๊ฒฉ๋ ฅ
// +1์ ํจ์ผ๋ก์จ ์ต์ ๋ช๋ฒ์ hp๋ฅผ ๊ฐ์ ธ์ผ ํ๋์ง.
long long temp = (mock) * atkk + 1;
res = max(res, temp);
}
}
cout << res << endl;
}