虽然很简单,但是为什么强转double不行啊,只能n/2.0吗
#include<iostream> using namespace std; int main(){ int n; int sum=0; cin>>n; for(int i=1;i<n;i++){ long long int t=i*i; if(t%n<(double)(n/2)) sum++; } cout<<sum; return 0; }