昨晚div3T5求调,悬关
  • 板块学术版
  • 楼主Reply_
  • 当前回复5
  • 已保存回复5
  • 发布时间2023/7/15 08:13
  • 上次更新2023/11/3 09:46:54
查看原帖
昨晚div3T5求调,悬关
373530
Reply_楼主2023/7/15 08:13
#include <bits/stdc++.h>
#define int long long
#define ll long long
#define R register
#define F(i,a,b) for(int i = (a);i<=(b);i++)
using namespace std;
inline int read(){R int x=0,t=1;R char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-') t=-1;ch=getchar();}while(ch>='0'&&ch<='9'){x=(x<<1)+(x<<3)+(ch^48);ch=getchar();}return x*t;}
int n,m,a[2001][2001],ans[2001][2001],k,H[2001],L[2001];
vector<int>g;
bool cmp(int x,int y)
{
	return x>y;
}
inline void solve()
{
	n=read(),m=read(),k=read();
	for(int i = 1;i<=n;i++)
	{
		F(j,1,m)
		{
			a[i][j]=read();
		}
	}
	for(int i = 1;i<=n;i++)
	{
		for(int j = 1;j<=m;j++) H[i]+=a[i][j],L[j]+=a[i][j];
	}
	for(int i = 1;i<=n;i++)
	{
		F(j,1,m)
		{
			ans[i][j]=-H[i]-L[j];
			g.push_back(-ans[i][j]);
		}
	}
	sort(g.begin(),g.end());
	//g[k-1]=-g[k-1];
	//cout << g[k-1] << " ";
	if(g[k-1]%(n+m-1)==0) cout << max(g[k-1]/(n+m-1),0ll);
	cout << max(g[k-1]/(n+m-1)+1,0ll);
}
signed main()
{
	solve();
	return 0;
}
/*


*/


2023/7/15 08:13
加载中...