提交时间:2021-05-27 21:50:44
运行 ID: 20012
#include<bits/stdc++.h> using namespace std; int n,m,i,j,k,ans=0,a[105][105]; int main(){ cin>>n>>m; for(i=0;i<=n;++i) for(j=0;j<=m;++j)a[i][j]=1; a[0][0]=0;//哨兵位置 for(i=0;i<n;++i) for(j=0;j<m;++j){ if(a[i][j]==0)continue;//看不到,则不处理 for(k=2;i*k<n&&j*k<m;k++)//把/ij的2倍以上的位置全部处理掉 a[i*k][j*k]=0;//ij的倍数位置都给ij挡住了 } for(i=0;i<n;++i) for(j=0;j<m;++j) if(a[i][j]==1)ans++; cout<<ans+1;//00位置也有一个人 return 0; }