题目大意:
给出一堆数,问它们在乘x个2和y个3后相等。
解题思路:
把它们分别除2和除3,然后看是否相等。
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<queue>
#include<vector>
#define LL long long
#define db double
#define EPS 1e-15
#define inf 1000000000
#define pa pair<int,int>
using namespace std;
int a[100000];
int main(){
int n;
scanf("%d",&n);
for (int i=1;i<=n;i++) scanf("%d",&a[i]);
while (a[1]%2==0) a[1]/=2;
while (a[1]%3==0) a[1]/=3;
int ans=a[1];
bool flag=1;
for (int i=2;i<=n;i++) {
while (a[i]%2==0) a[i]/=2;
while (a[i]%3==0) a[i]/=3;
if (a[i]!=ans) flag=0;
}
if (flag) printf("Yes");
else printf("No");
}