牛客寒假集训营第二场 补题
比赛的时候我咋就没有想到用向量呢!!!
1 #include <iostream> 2 using namespace std; 3 struct node{ 4 int x,y; 5 }m[505]; 6 bool is(int i,int j,int k) 7 { 8 int t=(m[i].x-m[k].x)*(m[j].x-m[k].x)+(m[i].y-m[k].y)*(m[j].y-m[k].y); 9 int w=(m[i].x-m[k].x)*(m[j].y-m[k].y)-(m[j].x-m[k].x)*(m[i].y-m[k].y); 10 return(t<0&&w!=0); 11 } 12 int main() 13 { 14 int n,ans=0; 15 cin>>n; 16 for(int i=1;i<=n;i++) 17 { 18 cin>>m[i].x>>m[i].y; 19 } 20 for(int i=1;i<=n;i++) 21 for(int j=i+1;j<=n;j++) 22 for(int k=j+1;k<=n;k++) 23 { 24 if(is(i,j,k)||is(i,k,j)||is(k,j,i)) 25 ans++; 26 } 27 cout<<ans; 28 } 29
1 #include <iostream> 2 #include <cmath> 3 using namespace std; 4 int main() 5 { 6 long long n,s=0,x; 7 cin>>n; 8 int k=sqrt(n); 9 for(int l=1;l<=k;l++) 10 { 11 x=l*l; 12 for(int i=1;i<=l;i++) 13 { 14 if(x%i==0) 15 { 16 if(i==l) s++; 17 else s+=2; 18 } 19 20 } 21 } 22 23 cout<<s; 24 }