亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? problem.cpp

?? vrpsd 4---------------------------------------------------------
?? CPP
字號:
#include "Problem.h"

#include <cmath>

Problem::Problem( Control& control) {
  //   This function has the following (side) effects:
  //   1.reads in a problem instance from file,
  //   2.computes the cost matrix, if coordinates are given in problem instance,
  //   3.computes demands and probability distribution of demands
  //   for each customer
  //   4.if the capacity is given from command line, the vehicle capacity is
  //   assigned this value, instead of the value read from the input file (after verification
  //   that the new value is not smaller than the biggest possible customer demand).
  //   Note: probability distribution of customer i is uniform on the interval
  //   [avgDmnd[i]-spread[i], avgDmnd[i]+spread[i]].

    istream& ifs = control.getInputStream();
    ifs >> numberOfCustomers;
    
    vector<int> avgDmnd(numberOfCustomers);
    vector<int> spread(numberOfCustomers);

    vector<vector<double> > xyCustomers(numberOfCustomers); 

    //Allocation of distance matrix.
    distanceMatrix = vector<vector<double> >(numberOfCustomers);
    for(int i=0;i<numberOfCustomers; i++)
        distanceMatrix[i] = vector<double>(numberOfCustomers);
  
  if(control.getFlagMatrix() == false){
      //Temporary quantities to be read from ifs.
      for(int i=0; i<numberOfCustomers; i++)
          xyCustomers[i] = vector<double>(2);

        
      //Read data from ifs.
      int i=0;
      while(i<numberOfCustomers){
          ifs >> i;
          ifs >> xyCustomers[i][0] >> xyCustomers[i][1];
          ifs >> avgDmnd[i] >> spread[i];
          i++;
      }


      //Compute distance matrix.
      for(int i=0;i<numberOfCustomers; i++){
          for(int j=0; j<numberOfCustomers; j++){
              distanceMatrix[i][j]= sqrt((xyCustomers[i][0]-xyCustomers[j][0])
                                         *(xyCustomers[i][0]-xyCustomers[j][0]) +
                                         (xyCustomers[i][1]-xyCustomers[j][1])
                                         *(xyCustomers[i][1]-xyCustomers[j][1]));
          }  
  
      }
  }
  else if(control.getFlagMatrix() == true){
      //Read demand and spread data from ifs.
      int i=0;
      while(i<numberOfCustomers){
          ifs >> i;
          ifs >> avgDmnd[i] >> spread[i];
          //cout << avgDmnd[i] << " "  << spread[i] << " " << endl;/////
          i++;
      }
      //Read distance matrix from ifs.
      i=0;
      int j=0;
      while(i<numberOfCustomers){
          while(j<numberOfCustomers){
              ifs >> distanceMatrix[i][j];
              //cout << distanceMatrix[i][j] << " ";//////
              j++;
          }
          //cout << endl;///
          j=0;
          i++;
      }
  }
  else {
      cerr << "Problem.cpp Error:  control.getMatrix is neither true nor false, exiting" << endl;
      exit(-1);
  }

  //Compute customers demands and  probabilities (uniform on an interval).
  customerDemand = vector<vector<PossibleDemand> >(numberOfCustomers);
  int maxDmnd=0;     //maximum possible demand
  double averageDmnd=0.0; //average demand over all customers
  
  for(int i=0; i<numberOfCustomers; i++){ 
    //Dealing with boundary condition
   if ((avgDmnd[i] - spread[i])<0) {
      avgDmnd[i] = spread[i];
    }
    customerDemand[i] = vector<PossibleDemand>(2*spread[i]+1);
    averageDmnd+= avgDmnd[i];
    for(int d=0; d< (2*spread[i] +1); d++){
      int demand = avgDmnd[i]-(spread[i] - d);
      //Dealing with boundary condition.
      //if ( demand > 0 ) 
	customerDemand[i][d].demand_ = demand;
	//else customerDemand[i][d].demand_ = 0;

      customerDemand[i][d].probability_ = 1.0/(2.0*spread[i] +1.0);
      //keep tracks of maximum possible demand
      if(customerDemand[i][d].demand_ > maxDmnd)
	maxDmnd = customerDemand[i][d].demand_;
    }
  }

  //If given as input parameter, set the capacity equal to the command line value.
  if( control.capacityExists() ) {
    capacity = control.getCapacity();
    if (capacity < maxDmnd){ cerr << "Error: vehicle capacity given in input from command line is too small. Vehicle capacity must be bigger than the maximum customer demand: " << maxDmnd << ". Exit" << endl;
    exit(-1);
    }
  }
  //Else read the capacity from the input file.
  else
    ifs >> capacity;


#ifdef DEBUG  
  //Print out some stats to verify initialization.
  cout << "# Problem data:" << endl;  
  cout << "# numberOfCustomers (depot incl.) " << numberOfCustomers << endl; 
  cout << "# total average demand " << averageDmnd << endl;
  cout << "# capacity " << capacity << endl;
#endif
  /*
  for(int i=0; i<numberOfCustomers; i++){
    cout << i << " ";
    cout << xyCustomers[i][0] << " ";
    cout << xyCustomers[i][1] << " ";
    cout << avgDmnd[i] << " ";
    cout << spread[i] << endl;
    for(int j=0; j<numberOfCustomers; j++)
      cout << distanceMatrix[i][j] << " "; 
    cout << endl;
    for(int d=0; d<2*spread[i]+1; d++)
      cout << customerDemand[i][d].demand_ << " " << customerDemand[i][d].probability_ << " ";
    cout << endl; 
  }
  */

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品国产精品| 久久综合国产精品| 麻豆91免费看| 国产精品一线二线三线精华| 亚洲一级二级在线| www精品美女久久久tv| 黄色日韩三级电影| 一区二区三区四区高清精品免费观看 | 亚洲一区二区三区四区的| 欧美韩日一区二区三区四区| 久久久天堂av| 国产精品萝li| 亚洲精品日产精品乱码不卡| 一个色综合网站| 亚洲成a天堂v人片| 免费看日韩精品| 国产乱码精品一区二区三区忘忧草| 国产真实乱对白精彩久久| 国产精品白丝av| 成人av高清在线| 欧美色视频一区| 日韩你懂的在线观看| 中文字幕av一区二区三区免费看| 国产精品高潮呻吟久久| 亚洲成在线观看| 国产精品自产自拍| 91美女片黄在线观看91美女| 欧美电影在线免费观看| 久久精品网站免费观看| 一区二区三区在线播| 久草这里只有精品视频| 97久久超碰国产精品| 欧美一区欧美二区| 中文字幕成人网| 男人的j进女人的j一区| 91同城在线观看| 日韩精品一区在线观看| 一区二区不卡在线视频 午夜欧美不卡在| 婷婷综合在线观看| 成人av网站免费观看| 日韩三级视频中文字幕| 亚洲女人小视频在线观看| 久久精品国产99| 色综合天天综合网天天看片| 精品国产免费视频| 尤物在线观看一区| 岛国av在线一区| 欧美一级黄色录像| 亚洲一区二区三区四区在线观看| 国产精品中文字幕欧美| 欧美一区二区三区免费大片 | 亚洲福利一二三区| 国产盗摄精品一区二区三区在线| 欧美日韩精品是欧美日韩精品| 国产精品色呦呦| 久久99国产精品成人| 欧美日韩电影在线| 亚洲精品视频观看| 99精品热视频| 国产日韩欧美亚洲| 国产一区在线看| 精品国产成人系列| 久久99久久99小草精品免视看| 欧美色综合影院| 亚洲一区二区综合| 色哟哟欧美精品| 亚洲欧美欧美一区二区三区| 国产精品一区一区三区| xvideos.蜜桃一区二区| 精品一区二区三区香蕉蜜桃| 欧美一区二区视频在线观看2020| 亚洲国产欧美一区二区三区丁香婷| av午夜精品一区二区三区| 国产区在线观看成人精品| 国产精品一二三在| 国产视频在线观看一区二区三区 | 亚洲男同性恋视频| 国产日韩欧美综合在线| 欧美老女人第四色| 日韩电影在线一区二区三区| 国产欧美日韩一区二区三区在线观看| 91精品国产一区二区| 在线观看一区日韩| 日本乱码高清不卡字幕| 欧洲精品视频在线观看| 欧美性猛交xxxxxx富婆| 欧美午夜精品久久久| 欧美日韩精品系列| 欧美va亚洲va香蕉在线| 欧美日韩精品一区二区三区| 日韩视频中午一区| 久久久精品天堂| 日韩免费看的电影| 精品国产免费一区二区三区香蕉| 久久亚洲精华国产精华液| 成人激情文学综合网| 高清不卡在线观看| 欧美aa在线视频| 极品美女销魂一区二区三区| 久久99精品视频| 欧美精品成人一区二区三区四区| 日韩av成人高清| 亚洲成人一二三| 在线观看国产一区二区| 亚洲午夜羞羞片| 精品久久人人做人人爽| 成人午夜电影久久影院| 亚洲狠狠爱一区二区三区| 日韩精品一区二区三区在线观看| 成人毛片视频在线观看| 亚洲成av人在线观看| 国产喂奶挤奶一区二区三区| 日本国产一区二区| 久久99精品久久只有精品| 亚洲精品成a人| 2024国产精品视频| 欧美日韩亚洲综合| 成人综合在线视频| 免费在线观看日韩欧美| 国产精品久久久一本精品| 7777女厕盗摄久久久| 成人av综合在线| 久久精品国产一区二区三| 亚洲乱码国产乱码精品精可以看| 日韩免费视频一区二区| 欧美亚洲国产怡红院影院| 国产精品白丝jk白祙喷水网站| 亚洲福利视频一区| 亚洲欧美日韩在线不卡| 日韩欧美久久一区| 99久久精品一区二区| 精品影视av免费| 日韩av电影免费观看高清完整版 | 国产激情偷乱视频一区二区三区| 亚洲狠狠爱一区二区三区| 国产精品欧美久久久久无广告| 日韩亚洲欧美成人一区| 在线观看亚洲成人| 97国产一区二区| 成人午夜电影小说| 国产成人在线观看| 国内精品久久久久影院薰衣草| 亚洲第一电影网| 亚洲精品久久嫩草网站秘色| 中文字幕中文字幕一区| 国产人伦精品一区二区| 久久久www成人免费毛片麻豆 | 久久久影院官网| 日韩欧美123| 欧美一区二区视频网站| 欧美日韩亚洲综合| 欧美日韩一级视频| 91麻豆精品国产无毒不卡在线观看| 91国产成人在线| 欧美日韩视频在线第一区 | 日本韩国欧美一区| 色天天综合久久久久综合片| 粉嫩aⅴ一区二区三区四区五区| 国产一区二区三区不卡在线观看| 久久99精品一区二区三区| 精品一区二区三区在线视频| 久久99久久99精品免视看婷婷| 蓝色福利精品导航| 国产永久精品大片wwwapp| 国产精品99久久久久久久女警| 国产精品一线二线三线| 99久久精品国产网站| 一本久久a久久精品亚洲| 在线观看一区二区精品视频| 欧美日韩亚洲国产综合| 欧美一区二区三区四区视频| 日韩精品中文字幕在线一区| 久久看人人爽人人| 亚洲色图制服诱惑 | 亚洲激情综合网| 亚洲国产婷婷综合在线精品| 日韩制服丝袜av| 国产激情91久久精品导航| 成人福利视频在线看| 色综合网站在线| 日韩欧美在线网站| 国产精品网站导航| 亚洲成人一区二区在线观看| 国模少妇一区二区三区| 成人免费黄色大片| 欧美一区二区三级| 中文字幕精品综合| 日韩成人免费在线| 成人综合婷婷国产精品久久蜜臀| 在线观看中文字幕不卡| 久久只精品国产| 一区二区三区在线免费播放| 久久99国产精品久久99| 91在线视频免费91| 日韩精品一区二区三区视频播放| 国产精品的网站| 精品亚洲成a人在线观看 | 欧美一区二区啪啪| 中文字幕在线观看不卡视频| 日韩电影在线免费看|