答案: #include<bits/stdc++.h> using namespace std; int n; struct pn{ double w; int flag,fx; }; pn a[100010]; int main(){ scanf("%d",&n); for(int i=1;i<=n;i++){ cin>>a[i].w; if(a[i].w>0) a[i].fx=1; else a[i].fx=-1; a[i].w=abs(a[i].w); if(i1) a[i].flag=1; } while(1){ int s1=0; for(int i=1;i<=n;i++){ if(a[i].w>=0&&a[i].w<=100) s1++;
} if(s1
0) break; for(int i=1;i<=n;i++){ if(a[i].fx1) a[i].w+=0.5; else a[i].w-=0.5; } for(int i=1;i<=n;i++){ for(int j=i+1;j<=n;j++){ if(a[i].wa[j].w){ if(a[i].flag1||a[j].flag1){ a[i].flag=1; a[j].flag=1; } } } } } int sum=0; for(int i=1;i<=n;i++){ if(a[i].flag==1) sum++;
} cout<<sum; return 0; }

4 条评论

  • 1

信息

ID
1722
时间
1000ms
内存
256MiB
难度
7
标签
递交数
13
已通过
11
上传者