[伯俊]11058キーボード
標準11058キーボード
https://www.acmicpc.net/problem/11058
白駿14226のような表情の問題
所定時間3秒未満の場合:
前1秒状態にA=前1秒状態+1を追加
指定した3秒以内に、可能な場合:
3秒前選択、コピー、貼り付け状態前提=3秒前状態X 2
指定された時間が4秒の場合、次のことが可能です.
3秒前選択、コピー、貼付け全ての状態=3秒前状態X 2
4秒前状態完全選択、コピー、貼り付け、貼り付け=4秒前状態X 3
指定された時間が5秒の場合、次のことが可能です.
3秒前選択、コピー、貼付け全ての状態=3秒前状態X 2
4秒前状態完全選択、コピー、貼り付け、貼り付け=4秒前状態X 3
5秒前状態完全選択、コピー、貼り付け、貼り付け、貼り付け=5秒前状態X 4
指定された期間内で、可能な場合:
(2+1)秒前状態=(2+1)秒前状態X(1+1)を選択、コピー、貼り付け
(2+2)秒前状態=(2+2)秒前状態X(1+2)を選択、コピー、貼り付け
...
(2+i)秒前状態選択、コピー、貼付け=(2+i)秒前状態X(1+i)
白準11058キーボードプール
https://kibbomi.tistory.com/96
https://jaimemin.tistory.com/1098
https://www.acmicpc.net/problem/11058
白駿14226のような表情の問題
所定時間3秒未満の場合:
前1秒状態にA=前1秒状態+1を追加
指定した3秒以内に、可能な場合:
3秒前選択、コピー、貼り付け状態前提=3秒前状態X 2
指定された時間が4秒の場合、次のことが可能です.
3秒前選択、コピー、貼付け全ての状態=3秒前状態X 2
4秒前状態完全選択、コピー、貼り付け、貼り付け=4秒前状態X 3
指定された時間が5秒の場合、次のことが可能です.
3秒前選択、コピー、貼付け全ての状態=3秒前状態X 2
4秒前状態完全選択、コピー、貼り付け、貼り付け=4秒前状態X 3
5秒前状態完全選択、コピー、貼り付け、貼り付け、貼り付け=5秒前状態X 4
指定された期間内で、可能な場合:
(2+1)秒前状態=(2+1)秒前状態X(1+1)を選択、コピー、貼り付け
(2+2)秒前状態=(2+2)秒前状態X(1+2)を選択、コピー、貼り付け
...
(2+i)秒前状態選択、コピー、貼付け=(2+i)秒前状態X(1+i)
#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
const int MAX = 101;
int N;
long long cache[MAX];
long long getScreen(int time){
long long &res = cache[time];
if (res != -1) return res;
//1초전 상태에 A 하나 추가
res = 1 + getScreen(time - 1);
if (time >= 3) {
//(time- 2 - i)초 상태에 CtrlA + CtrlC + Σ(CtrlV)
for (int i = 1; time - 2 - i >= 0 ; ++i) {
res = max(res, getScreen(time - 2 - i) * (i + 1));
}
}
return res;
}
int main(){
ios_base::sync_with_stdio(0);
cin.tie(NULL);
cout.tie(NULL);
memset(cache, -1, sizeof(cache));
cin >> N;
cache[0] = 0;
cout << getScreen(N);
return 0;
}
📌参考資料https://kibbomi.tistory.com/96
https://jaimemin.tistory.com/1098
Reference
この問題について([伯俊]11058キーボード), 我々は、より多くの情報をここで見つけました https://velog.io/@sunjoo9912/백준-11058-크리보드テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol