本文整理汇总了C++中vll::assign方法的典型用法代码示例。如果您正苦于以下问题:C++ vll::assign方法的具体用法?C++ vll::assign怎么用?C++ vll::assign使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类vll
的用法示例。
在下文中一共展示了vll::assign方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(){
ll n,m,u,v,c;
while(cin >> n >> m && (n||m)){
s=1,t=n+1; N=n+2; pi.assign(N,INF);
cap.assign(N,vll(N,0)); flow.assign(N,vll(N,0)); cost.assign(N,vll(N,0));
vector<ll> U,V,C;
for(int i=0 ; i<m ; i++){
cin >> u >> v >> c;
U.push_back(u); V.push_back(v); C.push_back(c);
}
ll D, K; cin >> D >> K;
for(int i=0 ; i<m ; i++){
u=U[i] , v=V[i], c= C[i];
cost[u][v]=c; cost[v][u]=c;
cap[u][v]=K; cap[v][u]=K;
}
cap[n][t]=D; cost[n+1][t]=0;
mincost=0; maxflow=0; MCMF();
if(maxflow==D) cout << mincost << endl;
else cout << "Impossible." << endl;
}
return 0;
}
示例2: dijkstra
ll dijkstra(int s, int t){
found.assign(N,0); dist.assign(N,INF); f.assign(N,0); dad.assign(N,pii(-1,2));
dist[s]=0; f[s]=INF;
while(s!=-1){
int best=-1; found[s]=true;
for(int k=0 ; k<N; k++){
if(found[k]) continue;
relax(s,k,cap[s][k]-flow[s][k],cost[s][k],1);
relax(s,k,flow[k][s],-1*cost[k][s],-1);
if(best==-1 || dist[k]<dist[best]) best=k;
}
s=best;
}
for(int k=0 ; k<N ; k++){
pi[k]=min(pi[k]+dist[k],INF);
}
return f[t];
}
示例3: count
int count(int n, int k) {
K = k;
T.assign(27, vector<long long>(27, 0));
int start_row = 0;
for (int j=1; j<27; ++j) {
T[start_row][j] = 27-j;
T[++start_row][j] = j;
}
if (n & 1) {
return ((n>1 ? S((n-1)/2) : 0) + S((n+1)/2)) % mod;
} else {
return 2*S(n/2) % mod;
}
}
示例4: main
int main(){
ios_base::sync_with_stdio(false);
int t, n, q;
ll x, totSoma;
cin >> t;
while(t--){
cin >> n >> q;
vals.assign(n,0);
totSoma = 0;
for(int i = 0; i < n; i++){
cin >> vals[i];
totSoma = (totSoma + vals[i])%MOD;
}
bool first = true;
while(q--){
if(!first) cout << ' ';
first = false;
cin >> x;
ll ans = totSoma, d = x;
int i = 0;
while(d > 1ll && i < n){
ans = (ans + (((d-1)%MOD)*vals[i++])%MOD)%MOD;
d = root(x,i+1);
}
cout << (ans < 0 ? (MOD + ans) : ans);
}
cout << '\n';
}
}