首页 > 代码库 > ural 1209. 1,10,100,1000.....
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?‘\n‘:‘ ‘); 21 } 22 }
ural 1209. 1,10,100,1000.....
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。