Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
55108 呵呵 线性基 (basis) C++ 运行超时 10 2000 MS 1024 KB 783 2022-08-09 11:31:15

Tests(1/10):


#include <bits/stdc++.h> using namespace std; typedef unsigned long long ll; ll a[200000],sum; int n; inline ll read() //以字符串形式读入数字可提速 { ll x=0; char c=getchar(); for(; c<'0' || c>'9'; c=getchar()); for(; c<='9' && c>='0'; c=getchar()) x=(x<<3)+(x<<1)+c-'0'; //位运算优化即x*8+x*2=x*10 return x; } inline void dg() { for(int i=1; i<n; i++) { for(int j=i+1; j<=n; j++) { ll s=(a[i]&a[j]),t=(a[i]|a[j]); if((s*s+t*t)>(a[i]*a[i]+a[j]*a[j])) a[i]=s,a[j]=t; } } } int main() { n=read(); for(int i=1; i<=n; i++) a[i]=read(); dg(); for(int i=1; i<=n; i++) sum+=(a[i]*a[i]); printf("%lld",sum); return 0; }


测评信息: