📄 求最大公约数.cpp
字号:
#include<iostream>
#include<sstream>
#include<fstream>
#include<vector>
using namespace std;
//--------------------------------------
typedef vector<vector<int>> Mat;
Mat input();
vector<int> Gys(Mat a);
void pl(vector<int> &b);
void output(vector<int> b);
//--------------------------------------
int main()
{
Mat a=input();
vector<int> b=Gys(a);
b=pl(b);
output(b);
return 1;
}
//--------------------------------------
Mat input()
{
ifstream in("abc.txt");
Mat a;
for(string s;getline(in,s);){
vector<int> b;
istringstream sin(s);
for(int ia;sin>>ia;)
b.push_back(ia);
a.push_back(b);
}
return a;
}
//--------------------------------------
vector<int> Gys(Mat a)
{
Mat a;
vector<int> c;
for(int i=0;i<a.size();i++){
if(a[i][0]>a[i][1]){
int sum;
sum=a[i][0];
a[i][0]=a[i][1];
a[i][1]=sum;}
for(int r=a[i][0];r>0;r--){
if(a[i][0]%r==0&&a[i][1]%r==0)
break;}
c.push_back(r);
}
return c;
}
//--------------------------------------
void pl(vector<int> b)
{
vector<int> b;
int sum;
for(int i=0;i<b.size()-1;i++)
for(int j=i+1;j<b.size();j++)
if(b[i]>b[j])
{sum=b[i];b[i]=b[j];b[j]=sum;}
}
//--------------------------------------
void output(vector<int> b)
{
for(int i=0;i<b.size();i++)
cout<<b[i]<<" ";
cout<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -