工作流:工人为你工作7天,回报为一根金条...


本来想写一个规则引擎的例子,没想到写成了交易流程...

代码下载 https://files.cnblogs.com/foundation/fjlc.rar

本来想写一个规则引擎的例子,没想到写成了交易流程...
----------------------------------------------------------------------------
原题:

工人为你工作7天,回报为一根金条,必须在每天付给他们一段,且只能截2次,你将如何付费?

分割方法:   1,2,4

第1天:给工人1  
第2天:给工人2,工人给你1  
第3天:给工人1,  
第4天:给工人4,工人给你2+1  
第5天:给工人1  
第6天:给工人2,工人给你1  
第7天:给工人1

分析,这道题是如何用最小的分割方式完成流通,扩展一下就是

工人为你工作N天,回报为一根金条,必须在每天付给他们一段,如果用最小的截取方式付费
(注:这里不考虑叠加在一起切,访类问题在用工作流作任务分解,资源分配时比效常见)
--------------------------------------------------------------------------------
流程设计:



启动流程代码



   class Program
    
{
        
static void Main(string[] args)
        
{
            
using(WorkflowRuntime workflowRuntime = new WorkflowRuntime())
            
{


                
int days = 7;  //指定天数
                Dictionary<stringobject> v = new Dictionary<stringobject>();
                v.Add(
"Days", days);
                WorkflowInstance instance 
= workflowRuntime.CreateWorkflow(typeof(分金流程.Workflow1), v);

                instance.Start();

                System.Console.Read();
            }

        }

    }

结果



天数可以自定义,下面是15天的结果








原文地址:https://www.cnblogs.com/foundation/p/852822.html