目录
公式计算法
c++
#include<bits/stdc++.h>
using namespace std;
int up_method(int n,int u,int s,int d,map<int,set<int>> mapa,map<int,set<int>> mapb,set<int> down,int maxt){
int t=0;int start=n;
//向上
map<int,int> flagm={
{n,1}};
for(start=n;start<=maxt;++start){
if(mapa.count(start)){ //有向上需求
if(flagm.count(start)){}
else{flagm[start]=1;t+=s;}
set<int>::iterator its=mapa[start].begin();
for(its;its!=mapa[start].end();++its){
if(flagm.count(*its)){}
else{flagm[*its]=1;t+