Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
51607 | AK2022071333 | 最优子图 | C++ | 解答错误 | 0 | 9 MS | 2212 KB | 1146 | 2022-07-13 12:04:51 |
#include <bits/stdc++.h> using namespace std; typedef long long ll; void read(ll &a) { a=0; int d=1; char c; while (c=getchar(),c<'0'||c>'9') if (c=='-') d=-1; a=a*10+c-48; while (c=getchar(),c>='0'&&c<='9') a=a*10+c-48; a*=d; } void write(ll x) { if (x<0) { x=-x; putchar(45); } if (x) write(x/10); else return; putchar(x%10+48); } ll w[500][500],n,k,ans=0; int main() { // freopen("sub.in","r",stdin); // freopen("sub.out","w",stdout); read(n),read(k); ll temp; for(ll i=1; i<=n; i++) { temp=0; for(ll j=1; j<=n; j++) { if(w[i][j]==0) { read(w[i][j]); } else { ll x; read(x); } if(w[i][j]==k) { temp+=k; } temp+=(2*w[i][j]-k); } if(temp<0) { for(ll j=1; j<=n; j++) { w[i][j]=k-w[i][j]; } } for(ll j=1; j<=n; j++) { w[j][i]=w[i][j]; } } for(ll i=1; i<=n; i++) { for(ll j=1; j<=n; j++) { ans+=w[i][j]; } } write(ans/2); return 0; }