flow

自定义流程

风流意气都作罢 提交于 2020-02-08 16:51:43
流程包括:事件、活动、流、节点 事件 **Event:流程的状态,无条件执行 属性:id、name 起始 <startEvent id="***" name="***" /> 结束 <endEvent id="***" name="***" /> 活动 activity:单个的任务属性:id、name、URI子元素1:input 属性:name、type、UIR 子元素2:output 属性:name、type、UIR如:决策服务 <activity id="decide1" name="决策服务1" URI="www.baidu.com">   <input name="Strategy1.xls" type="File" UIR="www.google.com/1" />   <input name="Result.properties" type="File" UIR="www.google.com/2" />   <output name="Strategy3.xls" type="File" UIR="www.google.com/3" />   <output name="Result2.properties" type="File" UIR="www.google.com/4" /> </activity> 流 flow:箭头属性:id、name、from、to

OO第三次博客作业

牧云@^-^@ 提交于 2020-02-08 02:07:04
OO的代码作业到这里要告一段落了,以后可以少熬夜多睡觉了,撒花~~~ 一、调研 (1)总结介绍规格化设计的大致发展历史    ->落后的软件生产方式无法满足迅速增长的计算机软件需求,软件的开发与维护出现一系列严重问题。   ->由此提出结构化程序设计,以模块化设计为中心,分而治之,引出了规格化抽象。   ->软件系统日趋复杂,结构化程序设计的缺点日渐暴露出来,面向对象由此产生,规格化设计进一步发展。   ->设计模式、设计原则、架构模式的产生。 (2)为什么得到了人们的重视    因为OO这门课的要求,不写会被扣很多分    规格化的书写和设计有助于程序员理解程序、分解程序,独立化开发任务、加快开发速度,有助于程序在细节和整体上进行验证,以保证程序的正确性,提高程序未来的可维护性、可扩展性。当在团队开发时,规格化的设计更有利于团队中的人相互理解。 二、分析bug 第九次作业   没有功能bug和规格bug 第十次作业   功能bug:    规格bug: 第十一次作业   没有规格bug 三、分析自己规格bug产生的原因   课下发放的JSF示例并不能完全解决我们对于规格的理解,所以在编写程序规格时难免出现一些问题,归结原因还是不熟练以及缺乏类似的思想。 四、列举不好的写法并给出改进写法   boolean getflag() { /** * @REQUIRES: None *

luogu P4015 运输问题

送分小仙女□ 提交于 2020-02-08 00:05:02
经典问题,货物供需平衡,很容易想到网络流,设源点和汇点,源点对每个仓库连一条capacity为仓库容量的边,cost为0,每个商店对汇点连一条capacity为需要的量的点,cost为0,每一个仓库与商店之间连一条capacity为无限大,cost为给定的边,直接跑最小费用最大流即可,求最大费用就去反边即可 #include<bits/stdc++.h> using namespace std; #define lowbit(x) ((x)&(-x)) typedef long long LL; const int maxm = 3e4+5; const int INF = 0x3f3f3f3f; struct edge{ int u, v, cap, flow, cost, nex; } edges[maxm]; int head[maxm], cur[maxm], cnt, fa[maxm], d[maxm], n, m, capacity[2][105], flowcost[105][105]; bool inq[maxm]; void init() { memset(head, -1, sizeof(head)); } void addedge(int u, int v, int cap, int cost) { edges[cnt] = edge{u, v, cap, 0

luogu P2756 飞行员配对方案问题

折月煮酒 提交于 2020-02-06 17:09:28
建立一个超级源点,将每个外籍飞行员连一条capacity为1的路,一个超级汇点,每个英国飞行员也连一条capacity为1的路,根据读入在英国飞行员和外籍飞行员连接capacity为1的路,匹配方案就是最大流,遍历每一个外籍飞行员的连接,当有流时就输出即可 const int maxm = 3e4+5; const int INF = 0x3f3f3f3f; struct edge{ int u, v, cap, flow, nex; } edges[maxm<<1]; int head[maxm<<1], cur[maxm<<1], cnt, level[105]; void init() { memset(head, -1, sizeof(head)); } void addedge(int u, int v, int cap) { edges[cnt] = edge{u, v, cap, 0, head[u]}; head[u] = cnt++; } void bfs(int s) { memset(level, -1, sizeof(level)); queue<int> q; level[s] = 0; q.push(s); while(!q.empty()) { int u = q.front(); q.pop(); for(int i = head[u]; i !=

Vue源码解读——准备工作(一)

若如初见. 提交于 2020-02-06 03:37:55
flow vue使用flow进行静态类型检查,学习flow有助于理解vue源码, 了解 flow 。 flow是什么? flow是facebook出品的js静态类型检查库。vue.js源码中使用flow进行静态类型检查和分析。 为什么用flow? 缺陷:js是动态类型语言,有些错误不会暴露在再编译过程中,在运行中就会发现各种错误,会让项目变得可读性查,难以维护。 趋势:静态类型检测让错误在编译过程中提示,让动态类型语言使用起来更像强类型语言成为一种趋势。 支持:bable和ESlint对flow也有很好的支持。 类似flow的工具还有哪些 类似flow的工具还有如TypeScript。 Vue.js源码目录设计 vue.js github 源码 src compile 编译相关 core 核心代码 platforms 跨平台相关 server 服务端渲染 sfc .vue模板解析 shared 共享代码 compile 编译相关逻辑 core vue主逻辑目录 platforms vue平台相关代码,vue既可以运行在浏览器中,也可以配合weex跨平台运行在native上 server 服务端渲染相关逻辑,vue.js可以配合nuxt.js实现服务端渲染,可以使vue开发的项目seo更友好 sfc 模板解析相关代码,会把.vue文件解析成javascript对象 shared

Open vSwitch使用案例扩展实验

老子叫甜甜 提交于 2020-02-05 23:50:12
实验参考 Open vSwitch使用案例扩展实验 实验步骤 1. 实验任务一。 1.创建新文件ovsSingleBr.py并编辑以下内容: #!/usr/bin/python from mininet.net import Mininet from mininet.node import Node from mininet.link import Link from mininet.log import setLogLevel, info def myNet(): "Create network from scratch using Open vSwitch." info( "*** Creating nodes\n" ) switch0 = Node( 's0', inNamespace=False ) h0 = Node( 'h0' ) h1 = Node( 'h1' ) h2 = Node( 'h2' ) info( "*** Creating links\n" ) Link( h0, switch0) Link( h1, switch0) Link( h2, switch0) info( "*** Configuring hosts\n" ) h0.setIP( '192.168.123.1/24' ) h1.setIP( '192.168.123.2/24' ) h2

洛谷 P4174 [NOI2006]最大获利

空扰寡人 提交于 2020-02-05 11:07:34
https://www.luogu.com.cn/problem/P4174 见 https://wenku.baidu.com/view/87ecda38376baf1ffc4fad25.html 第24-28页,有Maxflow(n,n+m)版的模型。 1 #include<cstdio> 2 #include<cstring> 3 #include<cstdlib> 4 #include<algorithm> 5 using namespace std; 6 #define LL long long 7 8 int n,m; 9 #define maxn 5011 10 #define maxm 50011*4+maxn*4 11 struct NetEdge{int to,next,cap,flow;}; 12 struct Net 13 { 14 int n,le,s,t,first[maxn],dis[maxn],cur[maxn],que[maxn],head,tail; NetEdge edge[maxm]; 15 void clear(int N) {n=N; le=2; memset(first,0,sizeof(first));} 16 void in(int x,int y,int c) {NetEdge &e=edge[le]; e.to=y; e.cap

SPOJ Optimal Marks

孤街浪徒 提交于 2020-02-05 10:06:29
https://vjudge.net/problem/SPOJ-OPTM 每位分别考虑后,相当于给所有点分两类,不同类之间的边会产生花费。即求最小割,源点向所有已知的这位为0的点连无穷边,所有已知的这位为1的点向汇点连无穷边。为了使总和尽量小,跑完最小割后,从汇点开始dfs找出残留网络种能到达汇点的点,置为1,除它们外的所有点都置为0。 1 #include<cstdio> 2 #include<cstring> 3 #include<cstdlib> 4 #include<algorithm> 5 using namespace std; 6 #define LL long long 7 8 int n,m,numofmk,T; 9 #define maxn 511 10 #define maxm 3011*4+maxn*2 11 int mk[maxn],ans[maxn]; 12 13 struct Edge{int to,next,cap,flow;}; 14 struct Net 15 { 16 int n,le,s,t,first[maxn],dis[maxn],cur[maxn],que[maxn],head,tail; Edge edge[maxm]; bool vis[maxn]; 17 void clear(int N) {n=N; le=2; memset

并查集好题

可紊 提交于 2020-02-04 12:18:07
给你一个n*n的矩阵,每个格子的数代表给格子的海拔,求下一之后的积水是多少。(n<=1000) 思路:思路还是很巧妙的,维护并查集,排序以后从小到大枚举高度,然后看四周有没有之前已经访问过的或者已经flow的,就算是已经漏水的,漏水的话,这个格子也会露水,否则吧当前高度作为父亲,排序的作业是英文漏水只可能从低的地方漏水,不可能从高的地方漏水。 代码: #include<algorithm> #include<iostream> #include<stdio.h> #include<string.h> //using namespace std; const int maxn=1010; int f[maxn*maxn]; int ix[5]= {0,0,1,-1}; int iy[5]= {-1,1,0,0}; int n; inline int get(int v) { return f[v]==v?v:f[v]=get(f[v]); } inline void Merge(int v,int u) { int t1 = get(v); int t2 = get(u); f[t1] = t2; return; } struct node { int x,y; int high,num; bool flow,vi; } N[maxn*maxn]; int MAP[maxn*maxn