z
好像就是解这个方程:
a[i]表示在序列中的位置,如果有正整数解,则是1,否则是0
变形的
1 #include <iostream> 2 #include <cmath> 3 #include <cstdio> 4 using namespace std; 5 6 const int N=65535; 7 long long a[N]; 8 9 int main(){ 10 long long n; 11 cin>>n; 12 for(int i=0;i<n;i++) 13 cin>>a[i]; 14 15 for(int i=0;i<n;i++){ 16 long long tmp=(long long)sqrt(2*(a[i]-1)); 17 if(tmp*(tmp+1)==2*(a[i]-1)||a[i]==1||tmp*(tmp-1)==2*(a[i]-1)) 18 cout<<1; 19 else cout<<0; 20 printf("%c",i+1==n?‘\n‘:‘ ‘); 21 } 22 }
时间: 2024-10-24 10:25:54