1 条题解
-
0
#include<bits/stdc++.h> using namespace std; int arr[100100]; // 存储每组测试用例的序列,满足n≤1e5的范围要求 int main(){ int t; // [1] 测试用例的组数 cin>>t; // [2] 遍历处理每一组测试用例 for(int k=1;k<=t;k++){ int n; // [3] 当前测试用例的序列长度 cin>>n; // [4] 输入当前测试用例的序列 for(int i=0;i<n;i++) cin>>arr[i]; int flag=0; // [5] 标记是否存在符合条件的数(0=不存在,1=存在) // [6] 遍历序列中的每个数,检查是否是所有数的倍数 for(int i=0;i<n;i++) { int flag2=1; // [7] 标记当前数是否满足条件,初始假设满足 // [8] 检查当前数是否能整除序列中所有数 for(int j=0;j<n;j++) { if(arr[i]%arr[j]!=0) // [9] 若当前数不能整除某个数,标记为不满足 { flag2=0; break; // 提前终止内层循环,优化效率 } } if(flag2==1){// [10] 若当前数满足条件,更新总标记并退出外层循环 flag=1; break; } } // [11] 根据标记输出结果 if(flag==1) cout<<"Yes"<<endl; else cout<<"No"<<endl; } return 0; }
- 1
信息
- ID
- 899
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者