-
Euler函數:
m = p1^r1 * p2^r2 * …… * pn^rn ai >= 1 , 1 <= i <= n
Euler函數:
定義:phi(m) 表示小于等于m并且與m互質的正整數的個數。
phi(m) = p1^(r1-1)*(p1-1) * p2^(r2-1)*(p2-1) * …… * pn^(rn-1)*(pn-1)
= m*(1 - 1/p1)*(1 - 1/p2)*……*(1 - 1/pn)
= p1^(r1-1)*p2^(r2-1)* …… * pn^(rn-1)*phi(p1*p2*……*pn)
定理:若(a , m) = 1 則有 a^phi(m) = 1 (mod m) 即a^phi(m) - 1 整出m
在實際代碼中可以用類似素數篩法求出
for (i = 1 i < MAXN i++)
phi[i] = i
for (i = 2 i < MAXN i++)
if (phi[i] == i)
{
for (j = i j < MAXN j += i)
{
phi[j] /= i
phi[j] *= i - 1
}
}
容斥原理:定義phi(p) 為比p小的與p互素的數的個數
設n的素因子有p1, p2, p3, … pk
包含p1, p2…的個數為n/p1, n/p2…
包含p1*p2, p2*p3…的個數為n/(p1*p2)…
phi(n) = n - sigm_[i = 1](n/pi) + sigm_[i!=j](n/(pi*pj)) - …… +- n/(p1*p2……pk)
= n*(1 - 1/p1)*(1 - 1/p2)*……*(1 - 1/pk)
標簽:
Euler
lt
phi
函數
上傳時間:
2014-01-10
上傳用戶:wkchong
-
Visual 開發 希望對你們有幫助
public static int Rom(int n, int m)//雙寄或雙偶
{
int count = 0 //第一排Y坐標上要幾個
if (n < m)
{
for (int i = 1 i <= n i = i + 2)
{
count++
}
}
else
{
for (int j = 1 j <= m j = j + 2)
{
count++
}
}
return count
}
標簽:
int
Visual
public
static
上傳時間:
2013-12-13
上傳用戶:懶龍1988
-
遙控解碼通過電腦串口顯示
/* 晶振:11.0569MHz */
#include <REGX52.h>
#define uchar unsigned char
uchar data IRcode[4] //定義一個4字節的數組用來存儲代碼
uchar CodeTemp //編碼字節緩存變量
uchar i,j,k //延時用的循環變量
sbit IRsignal=P3^2 //HS0038接收頭OUT端直接連P3.2(INT0)
/**************************延時0.9ms子程序**********************/
void Delay0_9ms(void)
{uchar j,k
for(j=18 j>0 j--)
for(k=20 k>0 k--)
}
/***************************延時1ms子程序**********************/
void Delay1ms(void)
{uchar i,j
for(i=2 i>0 i--)
for(j=230 j>0 j--)
}
標簽:
uchar
unsigned
11.0569
include
上傳時間:
2013-12-12
上傳用戶:Breathe0125
-
Instead of finding the longest common
subsequence, let us try to determine the
length of the LCS.
Then tracking back to find the LCS.
Consider a1a2…am and b1b2…bn.
Case 1: am=bn. The LCS must contain am,
we have to find the LCS of a1a2…am-1 and
b1b2…bn-1.
Case 2: am≠bn. Wehave to find the LCS of
a1a2…am-1 and b1b2…bn, and a1a2…am and
b b b
b1b2…bn-1
Let A = a1 a2 … am and B = b1 b2 … bn
Let Li j denote the length of the longest i,g g
common subsequence of a1 a2 … ai and b1 b2
… bj.
Li,j = Li-1,j-1 + 1 if ai=bj
max{ L L } a≠b i-1,j, i,j-1 if ai≠j
L0,0 = L0,j = Li,0 = 0 for 1≤i≤m, 1≤j≤n.
標簽:
the
subsequence
determine
Instead
上傳時間:
2013-12-17
上傳用戶:evil
-
Fluent中文教程
pdf格式,對于開始學習Fluent的人來說相當適用,可以按照本書學習!
I、目錄 第一章、開始
第二章、操作界面
第三章、文件的讀寫
第四章、單位系統
第五章、讀入和操作網格
第六章、邊界條件
第七章、物理特性
第八章、基本物理模型
第九章、湍流模型
第十章、輻射模型
第十一章、化學輸運與反應流
第十二章、污染形成模型
第十三章、相變模擬
第十四章、多相流模型
第十五章、動坐標系下的流動
第十六章、解算器的使用
第十七章、網格適應
第十八章、數據顯示與報告界面
第十九章、圖形與可視化
第二十章、Alphanumeric Report
第二十一章、流場函數定義
第二十二章、并行處理
第二十三章、自定義函數
第二十四章、參考向導
第二十五章、索引(Bibliograph
第二十六章、命令索引
II、如何使用該教程
標簽:
Fluent
教程
上傳時間:
2013-12-18
上傳用戶:netwolf
-
//初始化
initscr()
//獲得屏幕尺寸
getmaxyx(stdscr, h, w)
//畫背景
for(i=0 i<h i++)
for(j=0 j<w j++){
mvaddch(i, j, ACS_CKBOARD)
}
refresh()
//建立窗口
pad = newpad(80, 128)
for(i=0 i<80 i++){
char line[128]
sprintf(line, "This line in pad is numbered d\n", i)
mvwprintw(pad, i, 0, line)
}
//刷新屏幕
refresh()
prefresh(pad, 0, 1, 5, 10, 20, 45)
for(i=0 i<50 i++){
prefresh(pad, i+1, 1, 5, 10, 20, 45)
usleep(30000)
}
//等待按鍵
getch()
標簽:
getmaxyx
initscr
stdscr
for
上傳時間:
2014-08-30
上傳用戶:龍飛艇
-
設有由n個不相同的整數組成的數列,記為:
a(1)、a(2)、……、a(n)且a(i)<>a(j) (i<>j)
例如3,18,7,14,10,12,23,41,16,24。
若存在i1<i2<i3< … < ie 且有a(i1)<a(i2)< … <a(ie)則稱為長度為e的不下降序列。如上例中3,18,23,24就是一個長度為4的不下降序列,同時也有3,7,10,12,16,24長度為6的不下降序列。程序要求,當原數列給出之后,求出最長的不下降序列。
標簽:
整數
數列
上傳時間:
2013-12-14
上傳用戶:tonyshao
-
My JSP 'TeacherMain.jsp' starting page
var $=function(id) {
return document.getElementById(id);
}
function show_menu(num){
for(i=0;i
標簽:
C++
上傳時間:
2015-07-03
上傳用戶:xiyuzhu
-
實驗源代碼
//Warshall.cpp #include<stdio.h> void warshall(int k,int n) { int i , j, t; int temp[20][20]; for(int a=0;a<k;a++) { printf("請輸入矩陣第%d 行元素:",a); for(int b=0;b<n;b++) { scanf ("%d",&temp[a][b]); } } for(i=0;i<k;i++){ for( j=0;j<k;j++){ if(temp[ j][i]==1) { for(t=0;t<n;t++) { temp[ j][t]=temp[i][t]||temp[ j][t]; } } } } printf("可傳遞閉包關系矩陣是:\n"); for(i=0;i<k;i++) { for( j=0;j<n;j++) { printf("%d", temp[i][ j]); } printf("\n"); } } void main() { printf("利用 Warshall 算法求二元關系的可傳遞閉包\n"); void warshall(int,int); int k , n; printf("請輸入矩陣的行數 i: "); scanf("%d",&k);
四川大學實驗報告 printf("請輸入矩陣的列數 j: "); scanf("%d",&n); warshall(k,n); }
標簽:
warshall
離散
實驗
上傳時間:
2016-06-27
上傳用戶:梁雪文以
-
void DFS(MGraph G, int i)
{
int j;
visited[i] = TRUE;
printf("%c ", G.vexs[i]);
for (j=0; j<G.numVertexes; ++j)
{
if (G.arc[i][j]!=INFINITY && !visited[j])
DFS(G, j);
}
}
標簽:
多項式
代碼
計算
上傳時間:
2016-12-28
上傳用戶:chenyameng