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

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

?? stl_algo.h

?? TSP問題的一個類庫 有源代碼和stl
?? H
?? 第 1 頁 / 共 5 頁
字號:
        __p += __k;
      }
    }

    else {
      for (_Distance __j = 0; __j < __k/__d - 1; __j ++) {
        if (__p < __last - __k) {
          *__p = *(__p + __k);
          __p += __k;
        }

        *__p = * (__p - __l);
        __p -= __l;
      }
    }

    *__p = __tmp;
    ++__first;
  }

  return __result;
}

template <class _ForwardIter>
inline _ForwardIter rotate(_ForwardIter __first, _ForwardIter __middle,
                           _ForwardIter __last) {
  return __rotate(__first, __middle, __last,
                  __DISTANCE_TYPE(__first),
                  __ITERATOR_CATEGORY(__first));
}

template <class _ForwardIter, class _OutputIter>
_OutputIter rotate_copy(_ForwardIter __first, _ForwardIter __middle,
                            _ForwardIter __last, _OutputIter __result) {
  return copy(__first, __middle, copy(__middle, __last, __result));
}

// Return a random number in the range [0, __n).  This function encapsulates
// whether we're using rand (part of the standard C library) or lrand48
// (not standard, but a much better choice whenever it's available).

template <class _Distance>
inline _Distance __random_number(_Distance __n) {
#ifdef __STL_NO_DRAND48
  return rand() % __n;
#else
  return lrand48() % __n;
#endif
}

// random_shuffle

template <class _RandomAccessIter>
inline void random_shuffle(_RandomAccessIter __first,
                           _RandomAccessIter __last) {
  if (__first == __last) return;
  for (_RandomAccessIter __i = __first + 1; __i != __last; ++__i)
    iter_swap(__i, __first + __random_number((__i - __first) + 1));
}

template <class _RandomAccessIter, class _RandomNumberGenerator>
void random_shuffle(_RandomAccessIter __first, _RandomAccessIter __last,
                    _RandomNumberGenerator& __rand) {
  if (__first == __last) return;
  for (_RandomAccessIter __i = __first + 1; __i != __last; ++__i)
    iter_swap(__i, __first + __rand((__i - __first) + 1));
}

// random_sample and random_sample_n (extensions, not part of the standard).

template <class _ForwardIter, class _OutputIter, class _Distance>
_OutputIter random_sample_n(_ForwardIter __first, _ForwardIter __last,
                            _OutputIter __out, const _Distance __n)
{
  _Distance __remaining = 0;
  distance(__first, __last, __remaining);
  _Distance __m = min(__n, __remaining);

  while (__m > 0) {
    if (__random_number(__remaining) < __m) {
      *__out = *__first;
      ++__out;
      --__m;
    }

    --__remaining;
    ++__first;
  }
  return __out;
}

template <class _ForwardIter, class _OutputIter, class _Distance,
          class _RandomNumberGenerator>
_OutputIter random_sample_n(_ForwardIter __first, _ForwardIter __last,
                            _OutputIter __out, const _Distance __n,
                            _RandomNumberGenerator& __rand)
{
  _Distance __remaining = 0;
  distance(__first, __last, __remaining);
  _Distance __m = min(__n, __remaining);

  while (__m > 0) {
    if (__rand(__remaining) < __m) {
      *__out = *__first;
      ++__out;
      --__m;
    }

    --__remaining;
    ++__first;
  }
  return __out;
}

template <class _InputIter, class _RandomAccessIter, class _Distance>
_RandomAccessIter __random_sample(_InputIter __first, _InputIter __last,
                                  _RandomAccessIter __out,
                                  const _Distance __n)
{
  _Distance __m = 0;
  _Distance __t = __n;
  for ( ; __first != __last && __m < __n; ++__m, ++__first) 
    __out[__m] = *__first;

  while (__first != __last) {
    ++__t;
    _Distance __M = __random_number(__t);
    if (__M < __n)
      __out[__M] = *__first;
    ++__first;
  }

  return __out + __m;
}

template <class _InputIter, class _RandomAccessIter,
          class _RandomNumberGenerator, class _Distance>
_RandomAccessIter __random_sample(_InputIter __first, _InputIter __last,
                                  _RandomAccessIter __out,
                                  _RandomNumberGenerator& __rand,
                                  const _Distance __n)
{
  _Distance __m = 0;
  _Distance __t = __n;
  for ( ; __first != __last && __m < __n; ++__m, ++__first)
    __out[__m] = *__first;

  while (__first != __last) {
    ++__t;
    _Distance __M = __rand(__t);
    if (__M < __n)
      __out[__M] = *__first;
    ++__first;
  }

  return __out + __m;
}

template <class _InputIter, class _RandomAccessIter>
inline _RandomAccessIter
random_sample(_InputIter __first, _InputIter __last,
              _RandomAccessIter __out_first, _RandomAccessIter __out_last) 
{
  return __random_sample(__first, __last,
                         __out_first, __out_last - __out_first);
}


template <class _InputIter, class _RandomAccessIter, 
          class _RandomNumberGenerator>
inline _RandomAccessIter
random_sample(_InputIter __first, _InputIter __last,
              _RandomAccessIter __out_first, _RandomAccessIter __out_last,
              _RandomNumberGenerator& __rand) 
{
  return __random_sample(__first, __last,
                         __out_first, __rand,
                         __out_last - __out_first);
}

// partition, stable_partition, and their auxiliary functions

template <class _ForwardIter, class _Predicate>
_ForwardIter __partition(_ForwardIter __first,
		         _ForwardIter __last,
			 _Predicate   __pred,
			 forward_iterator_tag) {
  if (__first == __last) return __first;

  while (__pred(*__first))
    if (++__first == __last) return __first;

  _ForwardIter __next = __first;

  while (++__next != __last)
    if (__pred(*__next)) {
      swap(*__first, *__next);
      ++__first;
    }

  return __first;
}

template <class _BidirectionalIter, class _Predicate>
_BidirectionalIter __partition(_BidirectionalIter __first,
                               _BidirectionalIter __last,
			       _Predicate __pred,
			       bidirectional_iterator_tag) {
  while (true) {
    while (true)
      if (__first == __last)
        return __first;
      else if (__pred(*__first))
        ++__first;
      else
        break;
    --__last;
    while (true)
      if (__first == __last)
        return __first;
      else if (!__pred(*__last))
        --__last;
      else
        break;
    iter_swap(__first, __last);
    ++__first;
  }
}

template <class _ForwardIter, class _Predicate>
inline _ForwardIter partition(_ForwardIter __first,
   			      _ForwardIter __last,
			      _Predicate   __pred) {
  return __partition(__first, __last, __pred, __ITERATOR_CATEGORY(__first));
}


template <class _ForwardIter, class _Predicate, class _Distance>
_ForwardIter __inplace_stable_partition(_ForwardIter __first,
                                        _ForwardIter __last,
                                        _Predicate __pred, _Distance __len) {
  if (__len == 1)
    return __pred(*__first) ? __last : __first;
  _ForwardIter __middle = __first;
  advance(__middle, __len / 2);
  return rotate(__inplace_stable_partition(__first, __middle, __pred, 
                                           __len / 2),
                __middle,
                __inplace_stable_partition(__middle, __last, __pred,
                                           __len - __len / 2));
}

template <class _ForwardIter, class _Pointer, class _Predicate, 
          class _Distance>
_ForwardIter __stable_partition_adaptive(_ForwardIter __first,
                                         _ForwardIter __last,
                                         _Predicate __pred, _Distance __len,
                                         _Pointer __buffer,
                                         _Distance __buffer_size) 
{
  if (__len <= __buffer_size) {
    _ForwardIter __result1 = __first;
    _Pointer __result2 = __buffer;
    for ( ; __first != __last ; ++__first)
      if (__pred(*__first)) {
        *__result1 = *__first;
        ++__result1;
      }
      else {
        *__result2 = *__first;
        ++__result2;
      }
    copy(__buffer, __result2, __result1);
    return __result1;
  }
  else {
    _ForwardIter __middle = __first;
    advance(__middle, __len / 2);
    return rotate(__stable_partition_adaptive(
                          __first, __middle, __pred,
                          __len / 2, __buffer, __buffer_size),
                    __middle,
                    __stable_partition_adaptive(
                          __middle, __last, __pred,
                          __len - __len / 2, __buffer, __buffer_size));
  }
}

template <class _ForwardIter, class _Predicate, class _Tp, class _Distance>
inline _ForwardIter
__stable_partition_aux(_ForwardIter __first, _ForwardIter __last, 
                       _Predicate __pred, _Tp*, _Distance*)
{
  _Temporary_buffer<_ForwardIter, _Tp> __buf(__first, __last);
  if (__buf.size() > 0)
    return __stable_partition_adaptive(__first, __last, __pred,
                                       _Distance(__buf.requested_size()),
                                       __buf.begin(), __buf.size());
  else
    return __inplace_stable_partition(__first, __last, __pred, 
                                      _Distance(__buf.requested_size()));
}

template <class _ForwardIter, class _Predicate>
inline _ForwardIter stable_partition(_ForwardIter __first,
                                     _ForwardIter __last, 
                                     _Predicate __pred) {
  if (__first == __last)
    return __first;
  else
    return __stable_partition_aux(__first, __last, __pred,
                                  __VALUE_TYPE(__first),
                                  __DISTANCE_TYPE(__first));
}

template <class _RandomAccessIter, class _Tp>
_RandomAccessIter __unguarded_partition(_RandomAccessIter __first, 
                                        _RandomAccessIter __last, 
                                        _Tp __pivot) 
{
  while (true) {
    while (*__first < __pivot)
      ++__first;
    --__last;
    while (__pivot < *__last)
      --__last;
    if (!(__first < __last))
      return __first;
    iter_swap(__first, __last);
    ++__first;
  }
}    

template <class _RandomAccessIter, class _Tp, class _Compare>
_RandomAccessIter __unguarded_partition(_RandomAccessIter __first, 
                                        _RandomAccessIter __last, 
                                        _Tp __pivot, _Compare __comp) 
{
  while (true) {
    while (__comp(*__first, __pivot))
      ++__first;
    --__last;
    while (__comp(__pivot, *__last))
      --__last;
    if (!(__first < __last))
      return __first;
    iter_swap(__first, __last);
    ++__first;
  }
}

const int __stl_threshold = 16;

// sort() and its auxiliary functions. 

template <class _RandomAccessIter, class _Tp>
void __unguarded_linear_insert(_RandomAccessIter __last, _Tp __val) {
  _RandomAccessIter __next = __last;
  --__next;
  while (__val < *__next) {
    *__last = *__next;
    __last = __next;
    --__next;
  }
  *__last = __val;
}

template <class _RandomAccessIter, class _Tp, class _Compare>
void __unguarded_linear_insert(_RandomAccessIter __last, _Tp __val, 
                               _Compare __comp) {
  _RandomAccessIter __next = __last;
  --__next;  
  while (__comp(__val, *__next)) {
    *__last = *__next;
    __last = __next;
    --__next;
  }
  *__last = __val;
}

template <class _RandomAccessIter, class _Tp>
inline void __linear_insert(_RandomAccessIter __first, 
                            _RandomAccessIter __last, _Tp*) {
  _Tp __val = *__last;
  if (__val < *__first) {
    copy_backward(__first, __last, __last + 1);
    *__first = __val;
  }
  else
    __unguarded_linear_insert(__last, __val);
}

template <class _RandomAccessIter, class _Tp, class _Compare>
inline void __linear_insert(_RandomAccessIter __first, 
                            _RandomAccessIter __last, _Tp*, _Compare __comp) {
  _Tp __val = *__last;
  if (__comp(__val, *__first)) {
    copy_backward(__first, __last, __last + 1);
    *__first = __val;
  }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲动漫第一页| 色婷婷久久久综合中文字幕| 日韩极品在线观看| 亚洲成人资源网| 亚洲国产aⅴ成人精品无吗| 亚洲免费电影在线| 亚洲图片欧美激情| 亚洲激情成人在线| 一区二区三区资源| 亚洲国产aⅴ天堂久久| 五月综合激情婷婷六月色窝| 丝袜亚洲另类丝袜在线| 欧美aⅴ一区二区三区视频| 日韩激情一区二区| 精品一区二区三区在线观看国产| 另类小说欧美激情| 国产 日韩 欧美大片| 高清成人在线观看| 色94色欧美sute亚洲线路二| 欧美日韩亚洲综合在线| 91精品国产欧美日韩| 精品免费国产二区三区 | 亚洲成人免费看| 亚洲国产视频直播| 日韩经典中文字幕一区| 国产在线视频一区二区三区| 国产成人午夜视频| 一本久久a久久免费精品不卡| 欧美主播一区二区三区| 欧美一级久久久| 久久久久久久综合狠狠综合| 国产精品福利影院| 亚洲在线观看免费| 久久国产麻豆精品| 99久久精品国产毛片| 欧美色区777第一页| 精品成人私密视频| 亚洲人成亚洲人成在线观看图片| 视频一区国产视频| 理论片日本一区| 9久草视频在线视频精品| 欧美群妇大交群的观看方式| 欧美精品一区二区三区在线| 亚洲丝袜自拍清纯另类| 日本vs亚洲vs韩国一区三区| 国产又粗又猛又爽又黄91精品| 91视频com| 日韩欧美国产1| 亚洲黄色片在线观看| 麻豆成人久久精品二区三区小说| 成人性色生活片免费看爆迷你毛片| 在线免费视频一区二区| 精品久久久久一区| 洋洋成人永久网站入口| 国内精品免费**视频| 在线视频亚洲一区| 久久久午夜精品理论片中文字幕| 亚洲黄一区二区三区| 国产一区二区毛片| 欧美日韩亚洲综合在线 | 欧美性做爰猛烈叫床潮| 精品精品国产高清一毛片一天堂| 国产精品成人午夜| 久久精品噜噜噜成人av农村| 日本高清不卡在线观看| 国产日韩欧美一区二区三区乱码| 亚洲成人综合在线| 99视频精品在线| 久久久精品日韩欧美| 日韩国产欧美三级| 91黄色小视频| 中文字幕中文在线不卡住| 久久91精品国产91久久小草| 欧美性猛片aaaaaaa做受| 国产精品女同一区二区三区| 玖玖九九国产精品| 欧美二区三区91| 亚洲激情图片小说视频| 成人avav在线| 日本一区二区三区在线观看| 久久精品国产77777蜜臀| 欧美精品一二三区| 一区二区三区中文在线观看| 99久久精品一区| 国产精品色哟哟网站| 国内精品伊人久久久久av影院| 91精品麻豆日日躁夜夜躁| 亚洲一区二区中文在线| 色综合中文字幕国产| 国产精品不卡一区| 成人免费毛片片v| 欧美激情在线免费观看| 国产激情91久久精品导航| 久久免费看少妇高潮| 国产专区欧美精品| 久久麻豆一区二区| 国产综合色产在线精品| 久久这里只精品最新地址| 六月丁香婷婷久久| 精品国精品自拍自在线| 另类中文字幕网| 精品福利一区二区三区| 精品一区二区精品| 精品国产电影一区二区| 另类小说综合欧美亚洲| 欧美大度的电影原声| 蜜臀av一区二区在线免费观看 | 91免费精品国自产拍在线不卡| 国产欧美精品一区二区色综合朱莉| 激情亚洲综合在线| 久久这里只精品最新地址| 国产福利一区二区三区| 日本一二三四高清不卡| 成人激情电影免费在线观看| 国产精品美女一区二区三区 | 欧美色手机在线观看| 亚洲小说欧美激情另类| 国产午夜精品久久久久久免费视 | 91精品免费在线观看| 人人爽香蕉精品| 欧美变态口味重另类| 国产伦精品一区二区三区在线观看| 久久久久成人黄色影片| 北条麻妃一区二区三区| 一区二区三区中文字幕在线观看| 欧美色涩在线第一页| 麻豆中文一区二区| 久久精品视频网| 色综合中文字幕国产 | 日韩成人一级片| 久久五月婷婷丁香社区| 成人av在线一区二区三区| 中文字幕亚洲精品在线观看| 日本高清不卡视频| 日韩福利电影在线| 国产欧美一区二区三区网站| 色综合久久六月婷婷中文字幕| 午夜精品福利久久久| 亚洲精品在线免费观看视频| 成a人片亚洲日本久久| 亚洲国产aⅴ成人精品无吗| 精品国产乱码久久久久久影片| 国产传媒欧美日韩成人| 亚洲黄色免费网站| 精品免费日韩av| 一本色道久久综合狠狠躁的推荐| 日韩影视精彩在线| 中文字幕电影一区| 欧美放荡的少妇| 成人免费av在线| 视频一区二区三区中文字幕| 久久久www成人免费无遮挡大片| 色菇凉天天综合网| 国产一区二区三区观看| 一区二区三区小说| 久久久久久一级片| 在线成人小视频| 成人18视频日本| 精品在线观看免费| 一区二区三区精品| 欧美激情资源网| 欧美一级久久久| 欧美在线一区二区三区| 国产高清成人在线| 日本不卡一区二区| 一区二区三区四区中文字幕| 久久久久久一二三区| 4438成人网| 色猫猫国产区一区二在线视频| 精品一区二区国语对白| 亚洲成人免费影院| 亚洲三级电影网站| 国产免费成人在线视频| 欧美一区二区三区视频免费播放 | 欧美性感一区二区三区| 成人一区二区视频| 久久99精品久久久久久| 亚洲123区在线观看| 一区在线播放视频| 久久久精品影视| 欧美xxxx老人做受| 欧美高清视频在线高清观看mv色露露十八| 国产宾馆实践打屁股91| 蜜桃av噜噜一区| 天天影视网天天综合色在线播放 | 成人激情小说网站| 久久99久久99小草精品免视看| 一区二区三国产精华液| 亚洲日本成人在线观看| 久久久精品一品道一区| 精品精品欲导航| 欧美一级在线观看| 7799精品视频| 欧美三级中文字幕| 在线观看亚洲成人| 色婷婷激情综合| 91色porny在线视频| va亚洲va日韩不卡在线观看| 高清国产午夜精品久久久久久| 国产乱人伦偷精品视频免下载|