阅读下列说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。 说明:设某一机器由n个部件组成,每一个部件都可以从m个不同的供应商处购得。供应商j供应的部件i具有重量Wij和价格Cij。设计一个算法,求解总价格不超过上限cc的最小重量的机器组成。采用回溯法来求解该问题。首先定义解空间。解空间由长度为n的向量组成,其中每个分量取值来自集合{1,2,…,m},将解空间用树形结构表示。接着从根节点开始,以深度优先的方式搜索整个解空间。从根节点开始,根节点成为活节点,同时也成为当前的扩展节点。向纵深方向考虑第一个部件从第一个供应商处购买,得到一个新节点。判断当前的机器价格(C11)是否超过上限(cc),重量(W11)是否比当前已知的解(最小重量)大,若是,应回溯至最近的一个活节点;若否,则该新节点成为活节点,同时也成为当前的扩展节点,根节点不再是扩展节点。继续向纵深方向考虑第二个部件从第一个供应商处购买,得到一个新节点。同样判断当前的机器价格(C11+C21)是否超过上限(cc),重量(W11+W21)是否比当前已知的解(最小重量)大。若是,应回溯至最近的一个活节点;若否,则该新节点成为活节点,同时也成为当前的扩展节点,原来的节点不再是扩展节点。以这种方式递归地在解空间中搜索,直到找到所要求的解或者解空间中已无活节点为止。 C代码:下面是该算法的C语言实现。 (1)变量说明n:机器的部件数。m:供应商数。cc:价格上限。w[][]:二维数组,w[i][j]表示第j个供应商供应的第i个部件的重量。c[][]:二维数组,c[i][j]表示第j个供应商供应的第i个部件的价格。bestW:满足价格上限约束条件的最小机器重量。bestC:最小重量机器的价格。bestX[]:最优解,一维数组,bestX[i]表示第i个部件来自哪个供应商。cw:搜索过程中机器的重量。cp:搜索过程中机器的价格。x[]:搜索过程中产生的解,x[i]表示第i个部件来自哪个供应商。i:当前考虑的部件,从0到n-1。j:循环变量 (2)函数backtrack 代码如下:
(2)j
(4)cw
[背景材料]
1.原告被告基本情况(略)。
2.案情介绍:
原告C建筑工程公司(下称C公司)诉被告A房地产开发公司(下称A公司)建设工程招投标纠纷一案,南市区人民法院于2005年9月14日受理,并追加B招标代理有限责任公司(下称B公司)为第三人参加诉讼。因该案与本院受理的另案属同一标的,本院依法调卷受理,并组成合议庭于2005年10月25日公开开庭进行了合并审理。原告C公司委托代理人W11、W12,被告A公司委托代理人W2,第三人B公司法定代表人D3到庭参加诉讼。本案现已审理终结。
原告C公司诉称:“2005年8月24日,B公司作为市委商住楼工程施工招标代理机构,当众宣布我司为中标人,A公司作为招标人于2005年8月28日向我司送达中标通知书。但A公司以各种借口,拒不与我司签订书面合同,并一直企图变更中标人。为此,请求法院判决确认我司在该项目招标中,中标有效,并督促A公司履行相关法律义务;否则,判决A公司双倍返还投标保证金,赔偿我司在本次招标投标活动中损失。”
被告A公司辩称:“C公司收到的中标通知书是市建设工程招投标管理办公室填写并要求我司盖章才发出的,但因市建设工程招投标管理办公室未签章核准,该中标通知书无效。故我司未与其订立合同,责任在于市建设工程招投标管理办公室的不作为,请法院驳回C公司的诉讼请求。”
第三人B公司述称:“我司接受A公司的委托对市委商住楼工程施工进行招标,整个程序合法有效。市建设工程招投标管理办公室对投标人D公司的异议予以否决,省招投标管理办公室的处理决定与事实不符,请法院公正判决。”
3.审查过程:
经审理查明,市委办公室于2005年5月16日委托A公司对市委闲置土地进行定向商品住宅开发,设计修建商住楼65套,总建筑面积10400m2。A公司接受委托后,于同年7月16日委托B公司对该工程施工进行招标。同日,B公司向C公司、D公司、E公司发出了投标邀请书及招标文件。招标文件载明:市委商住楼建设地点在市八一路6号,建设规模为10400m2,发包方式为总价包干,投标人须交纳投标保证金35万元,现场踏勘及投标预备会于2005年7月20日上午9:00召开,投标截止及开标时间为2005年8月6日上午9:30
7月20日,B公司组织有关人员对3个投标人的资信进行了实地考察与确认。
7月20日上午,B公司书面通知3个投标人更改最高限价和电话通知D公司加盖原中标工程执行情况的证明公章。
8月6日上午9:30前,3个投标人均递交了投标文件,开标会议按时举行。上午10时许,B公司对3个投标人的资信情况进行确认并公布:C公司为29.26分,D公司为31.61分,E公司为32.84分。上午11时许,评标委员会认定D公司递交的投标文件中,某个资信证明文件上仅有个人签字,未盖单位公章,应为无效。对其资信状况得分予以扣减,将D公司的资信得分由31.61分更改为30.55分。
评标结束后,B公司宣布:C公司最后得分78.62分,D公司最后得分78.12分,E公司最后得分77.86分。C公司为中标人。
当日下午,D公司向市建设工程招标投标管理办公室(下称市招标办)投诉。市招标办于同月16日作出《行政处理书》[市建招(2005)19号],确认B公司组织的市委商住楼工程施工招标投标活动程序合法,结果公正。
D公司收到市招标办《行政处理书》的当日向地区建设工程招标投标管理办公室(下称地区招标办)提出投诉。地区招标办于9月6日作出《行政处理书》 [地建招标发(2005)8号],维持了市招标办意见。D公司在9月6日收到地区招标办《行政处理书》当日,向省建设工程招标投标管理办公室(下称省招标办)提出复审申请。9月6日,A公司与C公司经反复商讨,抢在复审决定下达之前,由A公司向C公司发出了中标通知书,但市招标办未在该中标通知书上签章。
9月24日,省招标办作出《行政处理决定》[省建招发(2005)26号],将地区招标办《行政处理书》[地建招标发(2005)8号]撤销,认定D公司在市委商住楼工程投标中资信分有效。
10月8日,C公司向南市区人民法院提出前列诉讼请求。
11月2日,D公司向本院提出了确认其为市委商住楼工程施工招标中标人的诉讼请求。
另查明,C公司、D公司、E公司均向市委办公室交纳投标保证金35万元。上述事实,有各方当事人质证无异议的市委办公室5月16日出具的《委托书》、A公司7月16日出具的《授权委托书》、B公司7月16日发出的《投标邀请书》及《招标文件》、8月6日形成的《评标报告》、市招标办8月16日作出的《行政处理书》[市建招(2005)19号]、地区招标办于9月6日作出的《行政处理书》[地建招标发(2005)8号]、省招标办作出的《行政处理决定》[省建招发(2005)26号]、B公司9月6日发出的《中标通知书》等书证和C公司、B公司、A公司的当庭陈述予以证实。
本院认为,C公司与A公司、B公司在市委商住楼工程施工招标投标活动中所形成的招标投标关系,属民事活动范畴,应受我国《中华人民共和国民法通则》 (简称《民法通则》)、《招标投标法》,建设部及省建设厅、省监察厅制定的相关政策文件调整。C公司所持中标通知书未经市招标办核准签章,不符合《建设部关于发布<建设工程施工招标文件范本>的通知》[建监(1996)577号](已失效)第15条规定,不产生法律效力。虽然,省招标办是省建设厅依据国务院、省人民政府的相关文件设立的对全省建设工程招投标活动进行行政监督的职能部门,作出的关于市委商住楼工程招标问题的处理决定,符合《建设工程招标投标异议或投诉管理办法》[省建设厅、省监察厅建招发(2000)0241号]的规定,但不能因此确认D公司为中标人。
因此,A公司及B公司应依据该决定和相关的法律、法规重新确定中标人。故C公司关于确认中标通知书有效的诉讼请求不能成立,应予驳回。基于此,C公司以未产生法律效力的中标通知书提出的由A公司双倍返还保证金和赔偿损失的诉讼请求,亦不能成立,本院不予支持。
综上,A公司上列的辩称理由成立,本院予以采纳。
4.判决结果:
依照《民事诉讼法》第128条的规定,经本院审判委员会讨论决定,判决如下:驳回原告C公司的诉讼请求。本案案件受理费11 860元,由原告C公司负担。如不服本判决,可在判决书送达之日起15日内,向本院递交上诉状,并按对方当事人的人数提出副本,上诉于省高级人民法院。
[问题]
是否同意法院的判决,为什么
不同意法院的判决中关于“C公司所持中标通知书未经市招标办核准签章,不符合《建设部关于发布<建设工程施工招标文件范本>的通知》第15条规定,不产生法律效力”的观点。根据《民法通则》第58条的规定,下列民事行为无效:
(1)无民事行为能力人实施的。
(2)限制民事行为能力人依法不能独立实施的。
(3)一方以欺诈、胁迫的手段或者乘人之危,使对方在违背真实意思的情况下所为的。
(4)恶意串通,损害国家、集体或者第三人利益的。
(5)违反法律或者社会公共利益的。
(6)经济合同违反国家指令性计划的。
(7)以合法形式掩盖非法目的的。
中标通知的法律性质为承诺,属民事法律行为。我国的民事法律行为一般是到达时生效。根据《招标投标法》第45条的有关规定,中标通知书一经发出即产生法律约束力,具有特殊性。因此,如无特殊情形,A公司向C公司发出了中标通知书,则中标通知书生效。法院认为中标通知书不产生法律效力的依据是“不符合《建设部关于发布<建设工程施工招标文件范本>的通知》第15条规定”,不符合上述民事法律行为无效的情形。
本案中,9月6日A公司与C公司经反复商讨,抢在复审决定下达之前,由A公司向C公司发出了中标通知书。该行为属恶意串通,损害国家(本工程为市委闲置土地定向商品住宅开发)、或者第三人(D公司)利益,应认定为无效。中标通知书无效,但法院判决理由不正确。
[背景材料]
1.原告被告基本情况(略)。
2.案情介绍:
原告C建筑工程公司(下称C公司)诉被告A房地产开发公司(下称A公司)建设工程招投标纠纷一案,南市区人民法院于2005年9月14日受理,并追加B招标代理有限责任公司(下称B公司)为第三人参加诉讼。因该案与本院受理的另案属同一标的,本院依法调卷受理,并组成合议庭于2005年10月25日公开开庭进行了合并审理。原告C公司委托代理人W11、W12,被告A公司委托代理人W2,第三人B公司法定代表人D3到庭参加诉讼。本案现已审理终结。
原告C公司诉称:“2005年8月24日,B公司作为市委商住楼工程施工招标代理机构,当众宣布我司为中标人,A公司作为招标人于2005年8月28日向我司送达中标通知书。但A公司以各种借口,拒不与我司签订书面合同,并一直企图变更中标人。为此,请求法院判决确认我司在该项目招标中,中标有效,并督促A公司履行相关法律义务;否则,判决A公司双倍返还投标保证金,赔偿我司在本次招标投标活动中损失。”
被告A公司辩称:“C公司收到的中标通知书是市建设工程招投标管理办公室填写并要求我司盖章才发出的,但因市建设工程招投标管理办公室未签章核准,该中标通知书无效。故我司未与其订立合同,责任在于市建设工程招投标管理办公室的不作为,请法院驳回C公司的诉讼请求。”
第三人B公司述称:“我司接受A公司的委托对市委商住楼工程施工进行招标,整个程序合法有效。市建设工程招投标管理办公室对投标人D公司的异议予以否决,省招投标管理办公室的处理决定与事实不符,请法院公正判决。”
3.审查过程:
经审理查明,市委办公室于2005年5月16日委托A公司对市委闲置土地进行定向商品住宅开发,设计修建商住楼65套,总建筑面积10400m2。A公司接受委托后,于同年7月16日委托B公司对该工程施工进行招标。同日,B公司向C公司、D公司、E公司发出了投标邀请书及招标文件。招标文件载明:市委商住楼建设地点在市八一路6号,建设规模为10400m2,发包方式为总价包干,投标人须交纳投标保证金35万元,现场踏勘及投标预备会于2005年7月20日上午9:00召开,投标截止及开标时间为2005年8月6日上午9:30
7月20日,B公司组织有关人员对3个投标人的资信进行了实地考察与确认。
7月20日上午,B公司书面通知3个投标人更改最高限价和电话通知D公司加盖原中标工程执行情况的证明公章。
8月6日上午9:30前,3个投标人均递交了投标文件,开标会议按时举行。上午10时许,B公司对3个投标人的资信情况进行确认并公布:C公司为29.26分,D公司为31.61分,E公司为32.84分。上午11时许,评标委员会认定D公司递交的投标文件中,某个资信证明文件上仅有个人签字,未盖单位公章,应为无效。对其资信状况得分予以扣减,将D公司的资信得分由31.61分更改为30.55分。
评标结束后,B公司宣布:C公司最后得分78.62分,D公司最后得分78.12分,E公司最后得分77.86分。C公司为中标人。
当日下午,D公司向市建设工程招标投标管理办公室(下称市招标办)投诉。市招标办于同月16日作出《行政处理书》[市建招(2005)19号],确认B公司组织的市委商住楼工程施工招标投标活动程序合法,结果公正。
D公司收到市招标办《行政处理书》的当日向地区建设工程招标投标管理办公室(下称地区招标办)提出投诉。地区招标办于9月6日作出《行政处理书》 [地建招标发(2005)8号],维持了市招标办意见。D公司在9月6日收到地区招标办《行政处理书》当日,向省建设工程招标投标管理办公室(下称省招标办)提出复审申请。9月6日,A公司与C公司经反复商讨,抢在复审决定下达之前,由A公司向C公司发出了中标通知书,但市招标办未在该中标通知书上签章。
9月24日,省招标办作出《行政处理决定》[省建招发(2005)26号],将地区招标办《行政处理书》[地建招标发(2005)8号]撤销,认定D公司在市委商住楼工程投标中资信分有效。
10月8日,C公司向南市区人民法院提出前列诉讼请求。
11月2日,D公司向本院提出了确认其为市委商住楼工程施工招标中标人的诉讼请求。
另查明,C公司、D公司、E公司均向市委办公室交纳投标保证金35万元。上述事实,有各方当事人质证无异议的市委办公室5月16日出具的《委托书》、A公司7月16日出具的《授权委托书》、B公司7月16日发出的《投标邀请书》及《招标文件》、8月6日形成的《评标报告》、市招标办8月16日作出的《行政处理书》[市建招(2005)19号]、地区招标办于9月6日作出的《行政处理书》[地建招标发(2005)8号]、省招标办作出的《行政处理决定》[省建招发(2005)26号]、B公司9月6日发出的《中标通知书》等书证和C公司、B公司、A公司的当庭陈述予以证实。
本院认为,C公司与A公司、B公司在市委商住楼工程施工招标投标活动中所形成的招标投标关系,属民事活动范畴,应受我国《中华人民共和国民法通则》 (简称《民法通则》)、《招标投标法》,建设部及省建设厅、省监察厅制定的相关政策文件调整。C公司所持中标通知书未经市招标办核准签章,不符合《建设部关于发布<建设工程施工招标文件范本>的通知》[建监(1996)577号](已失效)第15条规定,不产生法律效力。虽然,省招标办是省建设厅依据国务院、省人民政府的相关文件设立的对全省建设工程招投标活动进行行政监督的职能部门,作出的关于市委商住楼工程招标问题的处理决定,符合《建设工程招标投标异议或投诉管理办法》[省建设厅、省监察厅建招发(2000)0241号]的规定,但不能因此确认D公司为中标人。
因此,A公司及B公司应依据该决定和相关的法律、法规重新确定中标人。故C公司关于确认中标通知书有效的诉讼请求不能成立,应予驳回。基于此,C公司以未产生法律效力的中标通知书提出的由A公司双倍返还保证金和赔偿损失的诉讼请求,亦不能成立,本院不予支持。
综上,A公司上列的辩称理由成立,本院予以采纳。
4.判决结果:
依照《民事诉讼法》第128条的规定,经本院审判委员会讨论决定,判决如下:驳回原告C公司的诉讼请求。本案案件受理费11 860元,由原告C公司负担。如不服本判决,可在判决书送达之日起15日内,向本院递交上诉状,并按对方当事人的人数提出副本,上诉于省高级人民法院。
[问题]
是否同意法院的判决,为什么
试题四
阅读下列说明和C代码,将应填入 (n) 处的字句写在答题纸的对应栏内。
[说明]
设某一机器由n个部件组成,每一个部件都可以从m个不同的供应商处购得。供应商j供应的部件i具有重量wij和价格cij。设计一个算法,求解总价格不超过上限cc的最小重量的机器组成。
采用回溯法来求解该问题:
首先定义解空间。解空间由长度为n的向量组成,其中每个分量取值来自集合{1,2,?,m),将解空间用树形结构表示。
接着从根结点开始,以深度优先的方式搜索整个解空间。从根结点开始,根结点成为活结点,同时也成为当前的扩展结点。向纵深方向考虑第一个部件从第一个供应商处购买,得到一个新结点。判断当前的机器价格(c11)是否超过上限(cc),重量(w11)是否比当前已知的解(最小重量)大,若是,应回溯至最近的一个活结点;若否,则该新结点成为活结点,同时也成为当前的扩展结点,根结点不再是扩展结点。继续向纵深方向考虑第二个部件从第一个供应商处购买,得到一个新结点。同样判断当前的机器价格(c11+c21)是否超过上限(cc),重量(w11+w21)是否比当前已知的解(最小重量)大。若是,应回溯至最近的一个活结点;若否,则该新结点成为活结点,同时也成为当前的扩展结点,原来的结点不再是扩展结点。以这种方式递归地在解空间中搜索,直到找到所要求的解或者解空间中已无活结点为止。
[C代码]
下面是该算法的C语言实现。
(1)变量说明
n:机器的部件数
m:供应商数
cc:价格上限
w[][]:二维数组,w[i][j]表示第j个供应商供应的第i个部件的重量
c[][]:二维数组,c[i]D]表示第j个供应商供应的第i个部件的价格 bestW:满足价格上限约束条件的最小机器重量
bestC://最小重量机器的价格
bestX[]:最优解,一维数组,bestX[i]表示第i个部件来自哪个供应商 cw:搜索过程中机器的重量
cp:搜索过程中机器的价格
x[]:搜索过程中产生的解,x[i]表示第i个部件来自哪个供应商
i:当前考虑的部件,从0到n-1
j:循环变量
(2)函数backtrack
int n=3;
int m=3;
int cc=4;
int w[3][3]={{1,2,3},{3,2,1},{2,2,2}};
int c[3][3]={{1,2,3},{3,2,1},{2,2,2}};
int bestW=8;
int bestC=0;
int bestX[3]={0,0,0};
int cw=0;
int cp=0;
int x[3]={0,0,0};
int backtrack (int i){
int j=0;
int found=0;
if(i>n-1){ /*得到问题解*/
bestW=cw;
bestC=cp;
for(j=0; j<n; j++){ (1) ;
}
return 1;
}
if (cp<=cc)(/*有解*/
found=1;
} for(j=0; (2) ; j++){
/*第i个部件从第j个供应商购买*/ (3) ;
cw=cw+w[i] [j];
cp=cp+c[i] [j];
if (cp<=cc&& (4) ){/*深度搜索,扩展当前结点*/
if (backtrack(i+1)){ found -1; )
}
/*回溯*/
cw=cw - w[i] [j]; (5) ;
}
return found;
}