算法 // A_Niu26素数伴侣.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> #include <cstring> #include <vector> using namespace std; vector<int> G[105]; int pre[105]; bool used[105]; bool dfs(int k) { for (int i = 0; i < G[k].size(); ++i) { if (used[G[k][i]] == 0) { used[G[k][i]] = 1; if (pre[G[k][i]] == 0 || dfs(pre[G[k][i]])) { pre[G[k][i]] = k; return true; } } else continue; } return false; } int main() { //求小于8000的所有质数 bool isprime[80000]; memset(isprime, 0, sizeof(isprime)); for (int i = 2; i <= 80000;i++) { int j; for (j = 2; j < i; j++) { if (i%j==0||j*j>i) { break;; } } /