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

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

?? quicktest.cpp

?? 大數運算類
?? CPP
字號:

#include <NTL/ZZ_pX.h>
#include <NTL/lzz_pX.h>

#include <NTL/version.h>

NTL_CLIENT



int SmallModulusTest(long p, long n)
{
   zz_pBak bak;

   bak.save();


   zz_p::init(p);

   zz_pX a, b, c, cc;

   random(a, n);
   random(b, n);
   PlainMul(c, a, b);
   FFTMul(cc, a, b);

   int res;
   res = (c != cc);

   bak.restore();

   return res;
}




int main()
{


   cerr << "This is NTL version " << NTL_VERSION << "\n"; 
   cerr << "configuration flags: ";

#ifdef NTL_STD_CXX
   cerr << "NTL_STD_CXX ";
#endif

#ifdef NTL_PSTD_NNS
   cerr << "NTL_PSTD_NNS ";
#endif
 
#ifdef NTL_PSTD_NHF
   cerr << "NTL_PSTD_NHF ";
#endif
 
#ifdef NTL_PSTD_NTN
   cerr << "NTL_PSTD_NTN ";
#endif                                                                          

#ifdef NTL_GMP_LIP
   cerr << "NTL_GMP_LIP ";
#endif

#ifdef NTL_GMP_HACK
   cerr << "NTL_GMP_HACK ";
#endif


#ifdef NTL_LONG_LONG
   cerr << "NTL_LONG_LONG ";
#endif

#ifdef NTL_LONG_LONG_TYPE
   cerr << "NTL_LONG_LONG_TYPE ";
#endif

#ifdef NTL_CXX_ONLY
   cerr << "NTL_CXX_ONLY ";
#endif


#ifdef NTL_X86_FIX
   cerr << "NTL_X86_FIX ";
#endif

#ifdef NTL_NO_X86_FIX
   cerr << "NTL_NO_X86_FIX ";
#endif

#ifdef NTL_AVOID_FLOAT
   cerr << "NTL_AVOID_FLOAT ";
#endif

#ifdef NTL_AVOID_BRANCHING
   cerr << "NTL_AVOID_BRANCHING ";
#endif

#ifdef NTL_FFT_PIPELINE
   cerr << "NTL_FFT_PIPELINE ";
#endif

#ifdef NTL_SINGLE_MUL
   cerr << "NTL_SINGLE_MUL ";
#endif

#ifdef NTL_FAST_INT_MUL
   cerr << "NTL_FAST_INT_MUL ";
#endif

#ifdef NTL_TBL_REM
   cerr << "NTL_TBL_REM ";
#endif

#ifdef NTL_NO_INIT_TRANS
   cerr << "NTL_NO_INIT_TRANS ";
#endif

#ifdef NTL_CLEAN_INT
   cerr << "NTL_CLEAN_INT ";
#endif

#ifdef NTL_CLEAN_PTR
   cerr << "NTL_CLEAN_PTR ";
#endif

#ifdef NTL_RANGE_CHECK
   cerr << "NTL_RANGE_CHECK ";
#endif


   cerr << "\n";

   if (_ntl_gmp_hack)
      cerr << "using GMP hack\n";

   long n, k;

   n = 200;
   k = 10*NTL_ZZ_NBITS;

   ZZ p;

   GenPrime(p, k);


   ZZ_p::init(p);         // initialization

   ZZ_pX f, g, h, r1, r2, r3;

   random(g, n);    // g = random polynomial of degree < n
   random(h, n);    // h =             "   "
   random(f, n);    // f =             "   "

   // SetCoeff(f, n);  // Sets coefficient of X^n to 1
   
   ZZ_p lc;

   do {
      random(lc);
   } while (IsZero(lc));

   SetCoeff(f, n, lc);


   // For doing arithmetic mod f quickly, one must pre-compute
   // some information.

   ZZ_pXModulus F;
   build(F, f);

   PlainMul(r1, g, h);  // this uses classical arithmetic
   PlainRem(r1, r1, f);

   MulMod(r2, g, h, F);  // this uses the FFT

   MulMod(r3, g, h, f);  // uses FFT, but slower

   // compare the results...

   if (r1 != r2) {
      cerr << "r1 != r2!!\n";
      return 1;
   }
   else if (r1 != r3) {
      cerr << "r1 != r3!!\n";
      return 1;
   }


   // small prime tests...I've made some changes in v5.3
   // that should be checked on various platforms, so 
   // we might as well check them here.

   if (SmallModulusTest(17, 1000)) {
      cerr << "first SmallModulusTest failed!!\n";
      return 1;
   }

   if (SmallModulusTest((1L << (NTL_SP_NBITS))-1, 1000)) {
      cerr << "second SmallModulusTest failed!!\n";
      return 1;
   }

   cerr << "test is OK\n";

   ZZ x1, x2, x3, x4;
   double t;
   long i;

   RandomLen(x1, 1024);
   RandomBnd(x2, x1);
   RandomBnd(x3, x1);

   mul(x4, x2, x3);

   t = GetTime();
   for (i = 0; i < 20000; i++)
      mul(x4, x2, x3);
   t = GetTime()-t;

   cerr << "time for 1024-bit mul: " << t*50 << "us";

   if (_ntl_gmp_hack) {
      _ntl_gmp_hack = 0;
      mul(x4, x2, x3);

      t = GetTime();
      for (i = 0; i < 20000; i++)
         mul(x4, x2, x3);
      t = GetTime()-t;

      cerr << " (" << (t*50) << "us without GMP)"; 

      _ntl_gmp_hack = 1;
   }

   cerr << "\n";

   rem(x2, x4, x1);

   t = GetTime();
   for (i = 0; i < 20000; i++)
      rem(x2, x4, x1);
   t = GetTime()-t;

   cerr << "time for 2048/1024-bit rem: " << t*50 << "us";

   if (_ntl_gmp_hack) {
      _ntl_gmp_hack = 0;
      rem(x2, x4, x1);
   
      t = GetTime();
      for (i = 0; i < 20000; i++)
         rem(x2, x4, x1);
      t = GetTime()-t;
      cerr << " (" << (t*50) << "us without GMP)"; 

      _ntl_gmp_hack = 1;
   }

   cerr << "\n";
   

   GenPrime(p, 1024);
   RandomBnd(x1, p);
   if (IsZero(x1)) set(x1);

   InvMod(x2, x1, p);

   t = GetTime();
   for (i = 0; i < 1000; i++)
      InvMod(x2, x1, p);
   t = GetTime()-t;

   cerr << "time for 1024-bit modular inverse: " << t*1000 << "us";

   if (_ntl_gmp_hack) {
      _ntl_gmp_hack = 0;
      InvMod(x2, x1, p);
   
      t = GetTime();
      for (i = 0; i < 1000; i++)
         InvMod(x2, x1, p);
      t = GetTime()-t;
         cerr << " (" << (t*1000) << "us without GMP)"; 

      _ntl_gmp_hack = 1;
   }

   cerr << "\n";



   // test modulus switching
   
   n = 1024;
   k = 1024;
   RandomLen(p, k);

   ZZ_p::init(p);
   ZZ_pInfo->check();

   ZZ_pX j1, j2, j3;

   random(j1, n);
   random(j2, n);

   t = GetTime();
   mul(j3, j1, j2);
   t = GetTime()-t;

   cerr << "time to multiply degree 1023 polynomials\n   modulo a 1024-bit number: ";
   cerr << t << "s";

   if (_ntl_gmp_hack) {
      _ntl_gmp_hack = 0;

      ZZ_p::init(p);
      ZZ_pInfo->check();

      t = GetTime();
      mul(j3, j1, j2);
      t = GetTime()-t;

      cerr << " (" << t << "s without GMP)";
      _ntl_gmp_hack = 1;
   }

   cerr << "\n";

   return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧洲日韩一区二区三区| 日本在线不卡视频一二三区| 国产福利电影一区二区三区| 久久婷婷久久一区二区三区| 精品一区二区三区视频| 国产三区在线成人av| av激情成人网| 亚洲午夜精品在线| 91精品国产综合久久久久久漫画| 美女视频网站久久| 欧美激情在线免费观看| 一本色道久久综合亚洲91| 亚洲一区二区三区在线看| 欧美一区在线视频| 国产成人超碰人人澡人人澡| 亚洲色图制服诱惑 | 亚洲精品日韩一| 欧美一区二区视频网站| 韩国一区二区三区| 中文字幕中文字幕一区| 91福利在线导航| 蜜臀va亚洲va欧美va天堂| 国产日产欧美精品一区二区三区| 91福利精品视频| 久99久精品视频免费观看| 国产精品久久久久久亚洲毛片 | 欧美日韩中字一区| 久久不见久久见免费视频7| 欧美国产精品劲爆| 欧美日韩视频在线一区二区| 国产精品资源在线| 亚洲欧美国产77777| 日韩精品一区在线| 一本大道久久a久久综合 | 日韩精品一二三| 日本一区二区视频在线| 欧美肥胖老妇做爰| 成人永久免费视频| 久久精品国产亚洲a| 夜夜夜精品看看| 欧美精彩视频一区二区三区| 欧美男人的天堂一二区| 91在线观看成人| 国产成人精品亚洲午夜麻豆| 亚洲成国产人片在线观看| 国产精品午夜春色av| 欧美岛国在线观看| 欧美视频精品在线观看| 成人黄色a**站在线观看| 精品中文字幕一区二区小辣椒| 一区二区三区日韩精品| 欧美精彩视频一区二区三区| 欧美大胆人体bbbb| 欧美日韩国产小视频| 91在线精品一区二区| 国产成人99久久亚洲综合精品| 老鸭窝一区二区久久精品| 亚洲一区二区三区四区的| 亚洲人成在线播放网站岛国| 国产午夜精品久久久久久久| 日韩精品一区二区三区蜜臀 | 奇米影视一区二区三区| 亚洲国产综合91精品麻豆| 亚洲欧美综合在线精品| 国产欧美精品一区二区色综合朱莉| 日韩一区二区麻豆国产| 欧美精品精品一区| 欧美日韩国产小视频| 欧美日韩亚洲综合一区二区三区| 91丨九色丨国产丨porny| 成人久久久精品乱码一区二区三区 | 欧美精品一二三| 欧美三级中文字幕| 欧美日韩在线亚洲一区蜜芽| 欧美亚洲综合一区| 欧美精品丝袜中出| 欧美精品乱码久久久久久按摩| 欧美人与z0zoxxxx视频| 欧美日韩国产综合一区二区| 欧美精品视频www在线观看| 精品污污网站免费看| 欧美日韩综合不卡| 91精品国产一区二区| 91精品国产欧美一区二区| 日韩美女在线视频 | 日韩欧美国产精品一区| 日韩一区二区影院| 欧美精品一区二区久久久| 精品日产卡一卡二卡麻豆| 久久精品在线观看| 国产精品高潮久久久久无| 悠悠色在线精品| 午夜一区二区三区视频| 蜜桃视频在线观看一区二区| 国产一区二区三区香蕉| 成人黄色小视频在线观看| 91在线看国产| 91精品国产一区二区三区蜜臀| 欧美成人在线直播| 韩国女主播一区二区三区| 国产91精品入口| 在线观看视频一区二区| 欧美精品99久久久**| xfplay精品久久| 中文字幕在线一区| 五月婷婷激情综合| 国产在线视频一区二区三区| 91色porny在线视频| 69堂成人精品免费视频| 久久久久久一二三区| 亚洲视频你懂的| 麻豆freexxxx性91精品| 99久久伊人久久99| 欧美精品 国产精品| 欧美激情一区二区在线| 亚洲午夜国产一区99re久久| 国产在线精品免费| 欧美在线观看一区| 久久久久久久网| 亚洲图片自拍偷拍| 国产精品一区二区免费不卡| 欧美专区日韩专区| 久久日韩粉嫩一区二区三区| 亚洲裸体在线观看| 另类专区欧美蜜桃臀第一页| 91在线视频免费91| 久久久久综合网| 日本中文字幕一区| 91网站最新地址| 日韩精品一区在线观看| 一区二区三区四区乱视频| 国产在线精品不卡| 欧美高清一级片在线| 亚洲精品久久久蜜桃| 国产一区二区三区免费看| 欧美日韩一本到| 中文字幕在线不卡一区| 国产一区二区h| 91精品福利在线一区二区三区| 亚洲美腿欧美偷拍| 亚洲精品一区二区三区四区高清| 艳妇臀荡乳欲伦亚洲一区| 成人在线综合网| 精品国产伦一区二区三区观看方式 | 欧美激情综合五月色丁香| 人人狠狠综合久久亚洲| 欧美日韩免费在线视频| 一区在线观看免费| 国产成人aaa| 久久综合九色综合97婷婷 | 亚洲男同性恋视频| 国产成人在线视频免费播放| 日韩丝袜美女视频| 婷婷综合五月天| 欧美日韩一区二区电影| 一区二区三区波多野结衣在线观看| 成人性色生活片| 中文字幕精品一区二区精品绿巨人| 久久99精品久久久久| 日韩欧美一二三四区| 肉色丝袜一区二区| 在线不卡中文字幕播放| 丝袜美腿一区二区三区| 欧美视频在线一区二区三区| 亚洲福利视频一区| 欧美日韩精品一二三区| 亚洲成人中文在线| 欧美男生操女生| 麻豆国产精品777777在线| 精品成人在线观看| 极品尤物av久久免费看| 久久亚洲影视婷婷| 国产精品一二三四五| 国产偷国产偷亚洲高清人白洁| 国产成人免费视频| 国产精品久久久久久久久免费桃花 | 国模少妇一区二区三区| 久久久亚洲精华液精华液精华液| 国产精品69久久久久水密桃| 中文字幕不卡一区| 色屁屁一区二区| 性欧美疯狂xxxxbbbb| 欧美一区二区视频观看视频| 精品午夜一区二区三区在线观看| 亚洲精品一区二区在线观看| 成人免费视频caoporn| 亚洲丝袜精品丝袜在线| 欧美日韩国产影片| 免费人成在线不卡| 国产欧美日韩在线| 色av一区二区| 老汉av免费一区二区三区| 久久久久久久综合| 91国产精品成人| 精品一区在线看| 亚洲人成网站色在线观看| 欧美美女直播网站| 国产成人亚洲综合色影视| 自拍偷拍亚洲激情| 欧美一区二区三区婷婷月色|