<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      挑戰(zhàn)程序設計競賽 2.6章習題 UVA - 10006 Carmichael Numbers

      https://vjudge.csgrandeur.cn/problem/UVA-10006

       當今計算機科學的一個重要的領域就是密碼學。有些人甚至認為密碼學是計算機科學中唯一重要的領域,沒有密碼學生命都沒有意義。
        阿爾瓦羅就是這樣的一個人,它正在設計一個為西班牙雜燴菜飯加密的步驟。他在加密算法中應用了一些非常大的素數(shù)。
        然而確認一個非常大的數(shù)是不是素數(shù)并不是那么簡單。一個費時的方法是用比這個數(shù)的平方根小的所有素數(shù)去除它,
        對于大整數(shù)來說,這樣一定會毀掉這個雜燴菜飯的。
        然而,一些很有信心耗時少的隨機測試存在,其中一個就是費馬測試。
        在2和n-1之間隨機選取一個數(shù)(n是我們要測試的數(shù))。如果a^n mod n = a 成立,n就可能是一個素數(shù)。
        如果一個數(shù)通過費馬測試很多次那么它就很可能是一個素數(shù)。
        不幸的是,一些數(shù)不是素數(shù)但是它們依然能通過每一個比它小的數(shù)的費馬測試。這些數(shù)被稱作卡邁克爾數(shù)
        這道題要求你寫一個程序去測試給定的數(shù)是不是一個卡邁克爾數(shù)。
        完成了這個任務的隊伍有希望接受來自阿爾瓦羅的西班牙雜燴菜飯23333
      
      Input
      多組輸入,第一行給一個n (2 < n < 65000) 。n = 0 表示輸入結束并不需要處理
      Output
      對每組輸入,輸出它是不是卡邁克爾數(shù),參考樣例。
      
      Sample Input
      1729
      17
      561
      1109
      431
      0
      
      Sample Output
      The number 1729 is a Carmichael number.
      17 is normal.
      The number 561 is a Carmichael number.
      1109 is normal.
      431 is normal.
      

      解答
      題意是找出一些和素數(shù)性質類似,但是不是素數(shù)的卡米爾數(shù)。
      對于一個數(shù)n, 如果2和n-1之間的數(shù)a(n是我們要測試的數(shù))。a^n mod n = a 均成立,n就可能是一個素數(shù)。
      如果n不是素數(shù),他就是卡米爾數(shù)

      那么我們先打表 記錄數(shù)據(jù)范圍內所有的素數(shù),然后保證n在表里面,逐個檢測2和n-1 是否符合a^n mod n = a .
      就可以判斷是不是卡米爾數(shù)了。 a^n使用快速冪計算。
      代碼如下

      #include <iostream>
      #include <unordered_set>
      
      using namespace std;
      
      
      int n;
      unordered_set<int> ss;
      const int N = 65010;
      int primes[N], cnt;
      bool st[N];
      
      void get_primes(int t) {
      	for (int i = 2; i <= t; i++) {
      		if (!st[i]) {
      			primes[cnt++] = i;
      			ss.insert(i);
      		}
      		for (int j = 0; primes[j] <= t / i; j++) {
      			st[primes[j] * i] = true;
      			if (i % primes[j] == 0) break;
      		}
      	}
      }
      
      int quickmi(long long a, long long b, long long m) {
      	long long ans = 1;
      	while (b) {
      		if (b & 1) {
      			ans = ans * a % m;
      		}
      		b >>= 1;
      		a = a * a % m;
      	}
      
      	return ans;
      }
      
      void solve() {
      	if (ss.count(n) != 0) {
      		cout << n << " is normal." << endl;
      		return;
      	}
      
      	for (int i = 2; i < n; i++) {
      		if (quickmi(i, n, n) != i) {
      			cout << n << " is normal." << endl;
      			return;
      		}
      	}
      
      	cout << "The number "<< n<< " is a Carmichael number." << endl;
      	return;
      }
      
      int main()
      {
      	get_primes(N);
      	while (cin >> n) {
      		if (0 == n) break;
      		solve();
      	}
      
      	return 0;
      }
      
      

      posted on 2024-04-04 12:27  itdef  閱讀(27)  評論(0)    收藏  舉報

      導航

      主站蜘蛛池模板: 在线无码午夜福利高潮视频| 国产一区二区日韩在线| 日韩精品区一区二区三vr| 国产偷窥熟女高潮精品视频| 国产粉嫩区一区二区三区| 亚洲一区二区精品极品| 国产欧美一区二区精品仙草咪| 国产亚洲精品久久久久秋霞| 日本一区二区三区18岁| 在线观看热码亚洲av每日更新| 精品人妻免费看一区二区三区| 亚洲精品综合一区二区在线| 99精品国产兔费观看久久99| 天天爽天天摸天天碰| 国产精品三级国产精品高| 国产精品无码成人午夜电影| 国偷自产一区二区三区在线视频 | 孕妇特级毛片ww无码内射| 久久精品国产亚洲av麻豆小说| 四虎亚洲精品高清在线观看| 深夜福利视频在线播放| 在线成人国产天堂精品av| 亚洲AVAV天堂AV在线网阿V| 桦南县| 久久精品国产99亚洲精品| 99久久亚洲综合精品成人网 | 夜色福利站WWW国产在线视频| 91精品国产午夜福利| 成年性午夜免费视频网站| 国自产拍偷拍精品啪啪模特| 人妻少妇精品视频无码综合| 少妇人妻真实偷人精品| 久久精品无码专区免费东京热 | 精品无码人妻| 国产精品无码无卡在线播放| 日韩午夜福利片段在线观看| 天天夜碰日日摸日日澡性色av| 377P欧洲日本亚洲大胆| 亚洲天堂一区二区成人在线| 99国产精品永久免费视频| 国产亚洲精品97在线视频一|