ural 1209. 1,10,100,1000.....

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?'
':' ');
21     }
22 }
自己选的路,跪着也要把它走完------ACM坑
原文地址:https://www.cnblogs.com/IKnowYou0/p/6227539.html