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

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

?? nn.c

?? Lin-Kernighan heuristic for the TSP and minimum weight perfect matching
?? C
字號:
#define max(A,B) ((A) >(B) ?(A) :(B) )  \/*5:*/#line 214 "./nn.w"#include <config.h>#include "lkconfig.h"/*6:*/#line 230 "./nn.w"#include <stdio.h>#include <stdlib.h>#include <stddef.h>/*:6*/#line 217 "./nn.w"/*12:*/#line 277 "./nn.w"#include "length.h"/*:12*//*24:*/#line 407 "./nn.w"#include "read.h"#include "lk.h"/*:24*//*36:*/#line 531 "./nn.w"#include "kdtree.h"/*:36*/#line 218 "./nn.w"/*8:*/#line 245 "./nn.w"#include "nn.h"/*:8*//*17:*/#line 324 "./nn.w"#include "error.h"#include "memory.h"/*:17*//*40:*/#line 573 "./nn.w"#include "dsort.h"/*:40*/#line 219 "./nn.w"/*9:*/#line 249 "./nn.w"int nn_max_bound;/*:9*/#line 221 "./nn.w"/*11:*/#line 268 "./nn.w"typedef struct{length_t len;int city;}nn_entry_t;/*:11*/#line 222 "./nn.w"/*15:*/#line 311 "./nn.w"static int*list,*begin,n;/*:15*//*28:*/#line 442 "./nn.w"static int list_size;/*:28*/#line 223 "./nn.w"/*13:*/#line 295 "./nn.w"int*nn_list(int city,int*list_len){*list_len= begin[city+1]-begin[city];return list+begin[city];}/*:13*//*18:*/#line 329 "./nn.w"voidnn_cleanup(void){/*19:*/#line 336 "./nn.w"if(begin){free_mem(begin);mem_deduct(sizeof(int)*(n+1));}/*:19*//*27:*/#line 436 "./nn.w"if(list){free_mem(begin);mem_deduct(sizeof(int)*list_size);}/*:27*/#line 332 "./nn.w"}/*:18*//*21:*/#line 361 "./nn.w"voidnn_build(int num_pure,int num_quadrant,int num_delauney){/*31:*/#line 458 "./nn.w"kd_bin_t*work;/*:31*/#line 365 "./nn.w"int i;n= tsp_instance->n;/*23:*/#line 393 "./nn.w"/*50:*/#line 687 "./nn.w"if(verbose>=500){printf("nn: build nn %d nq %d del %d\n",num_pure,num_quadrant,num_delauney);fflush(stdout);}/*:50*/#line 394 "./nn.w"errorif(num_pure<0,"Need positive number of nearest neighbours; %d specified",num_pure);errorif(num_quadrant<0,"Need positive number of quadrant neighbours; %d specified",num_quadrant);errorif(num_delauney<0,"Need positive Delauney depth; %d specified",num_delauney);errorif(num_pure<=0&&num_quadrant<=0&&num_delauney<=0,"Must specify some candidates");errorif(num_pure>=n,"%d nearest neighbours specified, but there are only %d cities",num_pure,n);/*:23*//*41:*/#line 583 "./nn.w"errorif(num_quadrant>0&&!E2_supports(tsp_instance),"Quadrant lists supported only when 2-d trees supported",num_pure);/*:41*//*47:*/#line 671 "./nn.w"errorif(num_delauney,"Delauney neighbours not supported (yet)");/*:47*/#line 368 "./nn.w"/*16:*/#line 317 "./nn.w"begin= new_arr_of(int,n+1);begin[0]= 0;/*:16*//*26:*/#line 428 "./nn.w"{int guess_avg;/*25:*/#line 417 "./nn.w"if(num_pure)guess_avg= num_pure+num_quadrant+num_delauney;else if(num_quadrant)guess_avg= 4*num_quadrant+num_delauney;elseguess_avg= 3*num_delauney*num_delauney;/*:25*/#line 430 "./nn.w"list_size= guess_avg*n;list= new_arr_of(int,list_size);}/*:26*//*29:*/#line 449 "./nn.w"work= new_arr_of(kd_bin_t,3*n);/*:29*/#line 370 "./nn.w"nn_max_bound= 0;for(i= 0;i<n;i++){/*33:*/#line 486 "./nn.w"int work_next= 0;/*:33*/#line 373 "./nn.w"/*52:*/#line 702 "./nn.w"if(verbose>=1250){printf("nn: about to build for %d; work_next=%d list_size=%d\n",i,work_next,list_size);fflush(stdout);}/*:52*/#line 374 "./nn.w"/*35:*/#line 519 "./nn.w"if(num_pure){int start_work= work_next;if(E2_supports(tsp_instance)){/*37:*/#line 540 "./nn.w"work_next+= E2_nn_bulk(i,num_pure,work+work_next);/*:37*/#line 523 "./nn.w"}else{/*38:*/#line 546 "./nn.w"{int j;for(j= 0;j<i;j++){kd_bin_city(&work[start_work+j])= j;kd_bin_monotonic_len(&work[start_work+j])= cost(i,j);}for(j= i+1;j<n;j++){kd_bin_city(&work[start_work+j-1])= j;kd_bin_monotonic_len(&work[start_work+j-1])= cost(i,j);}}/*:38*/#line 525 "./nn.w"/*39:*/#line 567 "./nn.w"select_range((void*)work,(size_t)n-1,sizeof(kd_bin_t),kd_bin_cmp_increasing,0,num_pure,0);work_next+= num_pure;/*:39*/#line 526 "./nn.w"}}/*:35*/#line 375 "./nn.w"/*42:*/#line 604 "./nn.w"if(num_quadrant){int quadrant;int q_count[5]= {0,0,0,0,0};/*43:*/#line 632 "./nn.w"{int j;coord_2d*coord= tsp_instance->coord;for(j= 0;j<work_next;j++){const double diff_x= coord[i].x[0]-coord[j].x[0];const double diff_y= coord[i].x[1]-coord[j].x[1];q_count[E2_quadrant(diff_x,diff_y)]++;}}/*:43*/#line 608 "./nn.w"if(0==q_count[1]+q_count[2]+q_count[3]+q_count[4]){/*45:*/#line 659 "./nn.w"{const int num_quadrant= n-1,quadrant= 0;/*44:*/#line 649 "./nn.w"work_next+= E2_nn_quadrant_bulk(i,num_quadrant,work+work_next,1<<quadrant);/*:44*/#line 661 "./nn.w"}/*:45*/#line 610 "./nn.w"}for(quadrant= 1;quadrant<=4;quadrant++){if(q_count[quadrant]<num_quadrant){/*44:*/#line 649 "./nn.w"work_next+= E2_nn_quadrant_bulk(i,num_quadrant,work+work_next,1<<quadrant);/*:44*/#line 614 "./nn.w"}}}/*:42*/#line 376 "./nn.w"/*48:*/#line 675 "./nn.w"/*:48*/#line 377 "./nn.w"/*32:*/#line 471 "./nn.w"errorif(work_next<1,"Must have nonempty candidate list");{int r,w,last_city;sort(work,(size_t)work_next,sizeof(kd_bin_t),kd_bin_cmp_increasing);for(r= w= 0,last_city= kd_bin_city(&work[r])-1;r<work_next;r++){if(kd_bin_city(&work[r])!=last_city)last_city= kd_bin_city(&work[w++])= kd_bin_city(&work[r]);}/*34:*/#line 499 "./nn.w"if(begin[i]+w>list_size){int new_size= list_size;while(begin[i]+w>new_size)new_size*= 2;/*49:*/#line 679 "./nn.w"if(verbose>=750){printf("nn: Resize list from %d elements to %d elements; begin[i]=%d, w=%d\n",list_size,new_size,begin[i],w);fflush(stdout);}/*:49*/#line 503 "./nn.w"list= mem_realloc(list,sizeof(int)*new_size);mem_deduct(sizeof(int)*list_size);list_size= new_size;}/*:34*/#line 480 "./nn.w"for(r= 0;r<w;r++)list[begin[i]+r]= kd_bin_city(&work[r]);begin[i+1]= begin[i]+w;}/*:32*/#line 378 "./nn.w"nn_max_bound= max(nn_max_bound,begin[i+1]-begin[i]);}/*30:*/#line 454 "./nn.w"free_mem(work);mem_deduct(sizeof(kd_bin_t)*3*n);/*:30*/#line 381 "./nn.w"/*51:*/#line 694 "./nn.w"if(verbose>=75){printf("nn: build nn %d nq %d del %d got %d total neighbours\n",num_pure,num_quadrant,num_delauney,begin[n]);fflush(stdout);}/*:51*/#line 382 "./nn.w"}/*:21*/#line 224 "./nn.w"const char*nn_rcs_id= "$Id: nn.w,v 1.134 1998/10/10 19:27:39 neto Exp neto $";/*:5*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品视频免费观看| 亚洲欧洲国产日本综合| 精品视频1区2区| 99国产精品一区| 不卡一区二区在线| 色综合咪咪久久| 在线观看国产一区二区| 欧美综合亚洲图片综合区| 91丨九色丨尤物| 在线欧美日韩国产| 欧美日韩www| 日韩女优电影在线观看| 精品电影一区二区三区 | 亚洲免费观看高清完整版在线 | 五月天中文字幕一区二区| 亚洲成人一区二区| 秋霞国产午夜精品免费视频| 麻豆精品一区二区| 国产成人免费视频精品含羞草妖精| 国产一区999| 91丨porny丨中文| 8x8x8国产精品| 久久久久久久久久久电影| 国产精品电影一区二区三区| 一区二区在线免费观看| 亚洲成a人v欧美综合天堂下载 | 国精产品一区一区三区mba视频| 韩国精品免费视频| 成人av先锋影音| 欧美久久一区二区| 亚洲精品美腿丝袜| 麻豆国产一区二区| 不卡的av在线播放| 91精选在线观看| 国产精品拍天天在线| 亚洲国产日韩一级| 国产91精品免费| 欧美日韩国产综合视频在线观看| 26uuu久久天堂性欧美| 亚洲三级在线免费| 国产专区综合网| 欧美日韩国产一级二级| 国产精品久久三| 麻豆精品一区二区三区| 91在线小视频| 久久久精品免费免费| 亚洲在线中文字幕| 国产成人8x视频一区二区| 欧美色综合天天久久综合精品| 精品国产精品一区二区夜夜嗨| 亚洲欧美日韩国产中文在线| 国产尤物一区二区| 欧美一区国产二区| 亚洲电影欧美电影有声小说| 岛国精品在线观看| 欧美sm美女调教| 五月综合激情婷婷六月色窝| 97久久久精品综合88久久| 日韩久久久久久| 日韩精品午夜视频| 欧美午夜精品免费| 亚洲精品成人a在线观看| 国产盗摄一区二区| 久久精品亚洲乱码伦伦中文| 免费xxxx性欧美18vr| 91国产福利在线| 一级日本不卡的影视| 成人av午夜影院| 国产精品卡一卡二卡三| 国产最新精品精品你懂的| 91精品国产欧美日韩| 亚洲网友自拍偷拍| 欧美特级限制片免费在线观看| 中文字幕中文在线不卡住| 高清久久久久久| 欧美国产日韩在线观看| 国产白丝网站精品污在线入口 | 国产成人高清视频| 精品91自产拍在线观看一区| 青青草精品视频| 日韩视频免费观看高清完整版在线观看| 一区二区三区产品免费精品久久75| 99精品国产一区二区三区不卡 | 在线一区二区三区四区五区| 亚洲欧洲99久久| 在线一区二区观看| 日本中文字幕一区二区视频 | 日韩欧美一区二区视频| 久久99久久精品| 国产三级精品在线| www.日韩av| 伊人夜夜躁av伊人久久| 欧美日韩一二三| 麻豆中文一区二区| 国产精品丝袜在线| 91黄色激情网站| 美女精品自拍一二三四| 久久久久国产精品人| 欧美日韩在线观看一区二区| 免费在线观看一区二区三区| 久久久午夜精品| 一本色道亚洲精品aⅴ| 亚洲成人动漫在线免费观看| 日韩精品专区在线影院重磅| 国产成人精品综合在线观看 | 欧美性感一区二区三区| 天堂蜜桃91精品| 久久老女人爱爱| 色欧美乱欧美15图片| 全部av―极品视觉盛宴亚洲| 国产日韩视频一区二区三区| 在线免费亚洲电影| 黄色小说综合网站| 亚洲精品一二三四区| 欧美一二三区精品| 91麻豆.com| 国产乱一区二区| 香蕉久久一区二区不卡无毒影院 | 亚洲综合久久久| 国产视频一区在线播放| 欧美日韩午夜影院| av在线这里只有精品| 毛片av中文字幕一区二区| 亚洲精品乱码久久久久| 国产午夜精品福利| 91精品久久久久久蜜臀| 99re亚洲国产精品| 国产精品一二三四| 欧美96一区二区免费视频| √…a在线天堂一区| 日韩三级视频在线看| 日本久久电影网| 成人精品免费视频| 久久99久久久欧美国产| 日精品一区二区三区| 日韩一区中文字幕| 中文幕一区二区三区久久蜜桃| 欧美一区二区在线观看| 欧美主播一区二区三区| 9人人澡人人爽人人精品| 久久99热99| 美国毛片一区二区三区| 日韩电影在线免费看| 亚洲一区二区偷拍精品| 亚洲欧美在线观看| 日韩毛片一二三区| 中文字幕乱码久久午夜不卡 | 亚洲日本一区二区| 亚洲色图视频网站| 国产精品三级电影| 国产精品毛片久久久久久| 欧美激情一区二区三区蜜桃视频| 欧美精品一区二区三区视频| 日韩西西人体444www| 91精品国产欧美一区二区成人| 在线精品国精品国产尤物884a| yourporn久久国产精品| 成人黄色免费短视频| 成人精品高清在线| 91亚洲精品久久久蜜桃网站 | 国内精品伊人久久久久av一坑 | 久久国产精品免费| 精品一区二区三区av| 国产一区二区三区免费播放 | 一区二区三区四区视频精品免费| 天天av天天翘天天综合网| 亚洲午夜久久久久中文字幕久| 一区二区三区免费在线观看| 一区二区三区免费网站| 天堂在线亚洲视频| 国产毛片精品视频| www.欧美日韩国产在线| 一本色道a无线码一区v| 欧美性猛片aaaaaaa做受| 51午夜精品国产| 久久久久久夜精品精品免费| 国产欧美日韩精品在线| 亚洲猫色日本管| 日韩va亚洲va欧美va久久| 久久电影网电视剧免费观看| 国产激情视频一区二区在线观看 | 色综合天天综合网天天看片| 色妹子一区二区| 日韩欧美中文字幕精品| 国产欧美日韩麻豆91| 一区二区三区产品免费精品久久75| 日韩av高清在线观看| 国产69精品久久777的优势| 色综合一区二区三区| 日韩视频不卡中文| 亚洲欧美日韩久久| 韩国午夜理伦三级不卡影院| 91视频在线观看| 精品久久久久99| 亚洲综合在线第一页| 国产麻豆精品久久一二三| 欧美午夜一区二区三区免费大片| 欧美xxxx老人做受| 亚洲一区二区三区四区在线观看 | 99这里都是精品|