feat(P4342): 实现动态规划算法解决环形表达式问题

添加动态规划表初始化及输入处理逻辑
包括同步IO优化和环形操作符数组处理
This commit is contained in:
Zengtudor 2025-08-28 21:23:39 +08:00
parent 2573240c73
commit 84eee83148

View File

@ -24,8 +24,44 @@ dpmin[i][j] = 1e9
dp[i][i]=arr[i]
*/
#include <cstdint>
#include <iostream>
#include <istream>
#include <vector>
using ll = int64_t;
int main(){
std::iostream::sync_with_stdio(false);
std::cin.tie(nullptr);
ll n;
std::cin>>n;
const ll add=0,mul=1;
const ll n21=2*n+1;
std::vector<std::vector<ll>> op(n*2+1,std::vector<ll>(2));
for(ll i=1;i<=n;i++){
char c;
std::cin>>c;
if(c=='t'){
op[i][0]=add;
}else{
op[i][0]=mul;
}
std::cin>>op[i][1];
op[i+n]=op[i];
}
std::vector<std::vector<ll>> dpmax,dpmin;
for(ll s=1;s<n;s++){
ll e = s+n-1;
dpmax.clear();
dpmax.resize(n21,std::vector<ll>(n21,-1e9));
dpmin.clear();
dpmin.resize(n21,std::vector<ll>(n21,1e9));
for(ll i=s;i<=e;i++){
dpmax[i][i]=op[i][1];
}
for(ll i=s;i<=e;i++){
}
}
}