#include <stdio.h>
int a, b, temp;
//辗转相除法实现
int Division(){
printf(“请输入两个数(a,b):\n”);
scanf("%d,%d",&a,&b);
if(a < b){
temp = a;
a = b;
b = temp;
}
while(a%b != 0){
temp = a%b;
a = b;
b = temp;
}
printf("最大公约数为:%d\n",b);
return 0;
}
//相减法实现
int Subtract(){
printf(“请输入两个数(a,b):\n”);
scanf("%d,%d",&a,&b);
if(a < b){
temp = a;
a = b;
b = temp;
}
while(a-b != 0){
temp = a-b;
a = b;
b = temp;
if(a < b){
temp = a;
a = b;
b = temp;
}
}
printf(“最大公约数为:%d\n”,b);
return 0;
}
//穷举法实现
int Exhaus() {
printf(“请输入两个数(a,b):\n”);
scanf("%d,%d",&a,&b);
if(a < b) {
temp = a;
a = b;
b = temp;
}
for(temp = b; a%temp || b%temp; temp–);
printf(“最大公约数为:%d\n”,temp);
return 0;
}
int main(){
int nub;
printf("\n求两个数的最大公约数:");
printf("\n1、辗转相除法");
printf("\n2、相减法");
printf("\n3、穷举法");
printf("\n请选择你要使用的方法:\n");
scanf("%d",&nub);
switch(nub){
case 1:
Division();
break;
case 2:
Subtract();
break;
case 3:
Exhaus();
break;
}
return 0;
}
辗转相除法的时间复杂度是O(n)= log n
相减法的时间复杂度是
穷举法的时间复杂度是O(n)=n/2
您可以使用渲染LaTeX数学表达式 KaTeX:
Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n−1)!∀n∈N 是通过欧拉积分
Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t   . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=∫0∞tz−1e−tdt.
你可以找到更多关于的信息 LaTeX 数学表达式here.
新的甘特图功能,丰富你的文章
- 关于 甘特图 语法,参考 这儿,
UML 图表
可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图::
这将产生一个流程图。:
- 关于 Mermaid 语法,参考 这儿,
FLowchart流程图
我们依旧会支持flowchart的流程图:
- 关于 Flowchart流程图 语法,参考 这儿.
导出与导入
导出
如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。
导入
如果你想加载一篇你写过的.md文件或者.html文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。