Submission #1693232


Source Code Expand

#include <bits/stdc++.h>
#define ls  (n<<1)
#define rs  (ls|1)
using namespace std;

typedef long long  LL;
int n,m,a[5010],b[5010][205],S[205][5010],T[205];
LL t[20010],tag[20010],ans;

void modify(int n,int l,int r,int L,int R,int k)
{
	if ((L<=l)&&(r<=R))  t[n]+=k,tag[n]+=k;
	else
		{
			int mid=(l+r)>>1;
			if (L<=mid)  modify(ls,l,mid,L,R,k);
			if (mid<R)  modify(rs,mid+1,r,L,R,k);
			t[n]=max(t[ls],t[rs])+tag[n];
		}
}

void work()
{
	scanf("%d %d",&n,&m);
	for (int i=2; i<=n; i++)	 scanf("%d",&a[i]);
	for (int i=1; i<=n; i++)
		for (int j=1; j<=m; j++)
			scanf("%d",&b[i][j]);
	for (int i=1; i<=n; i++)
		{
			if (i>1)  modify(1,1,n,1,i-1,-a[i]);
			for (int j=1; j<=m; j++)
				{
					while ((T[j])&&(b[S[j][T[j]]][j]<b[i][j]))
						modify(1,1,n,S[j][T[j]-1]+1,S[j][T[j]],-b[S[j][T[j]]][j]),T[j]--;
					modify(1,1,n,S[j][T[j]]+1,i,b[i][j]),S[j][++T[j]]=i;
				}
			ans=max(ans,t[1]);
		}
	printf("%lld",ans);
}

int main()
{
	work();
	return 0;
}

Submission Info

Submission Time
Task F - Yakiniku Restaurants
User YMDragon
Language C++14 (GCC 5.4.1)
Score 1000
Code Size 1012 Byte
Status AC
Exec Time 314 ms
Memory 7168 KB

Compile Error

./Main.cpp: In function ‘void work()’:
./Main.cpp:24:22: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d %d",&n,&m);
                      ^
./Main.cpp:25:45: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  for (int i=2; i<=n; i++)  scanf("%d",&a[i]);
                                             ^
./Main.cpp:28:24: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d",&b[i][j]);
                        ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 1000 / 1000
Status
AC × 2
AC × 30
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
All sample_01.txt, sample_02.txt, subtask_1_dense_max_01.txt, subtask_1_dense_max_02.txt, subtask_1_dense_max_03.txt, subtask_1_dense_max_04.txt, subtask_1_dense_rand_01.txt, subtask_1_dense_rand_02.txt, subtask_1_dense_rand_03.txt, subtask_1_dense_rand_04.txt, subtask_1_max_01.txt, subtask_1_max_02.txt, subtask_1_max_03.txt, subtask_1_max_04.txt, subtask_1_min_01.txt, subtask_1_min_02.txt, subtask_1_rand_01.txt, subtask_1_rand_02.txt, subtask_1_rand_03.txt, subtask_1_rand_04.txt, subtask_1_widemax_01.txt, subtask_1_widemax_02.txt, subtask_1_widemax_03.txt, subtask_1_widemax_04.txt, subtask_1_widemax_05.txt, subtask_1_widemax_06.txt, subtask_1_widemax_07.txt, subtask_1_widemax_08.txt, subtask_1_widemax_09.txt, subtask_1_widemax_10.txt
Case Name Status Exec Time Memory
sample_01.txt AC 2 ms 2304 KB
sample_02.txt AC 2 ms 2304 KB
subtask_1_dense_max_01.txt AC 312 ms 7168 KB
subtask_1_dense_max_02.txt AC 312 ms 7168 KB
subtask_1_dense_max_03.txt AC 313 ms 7168 KB
subtask_1_dense_max_04.txt AC 312 ms 7168 KB
subtask_1_dense_rand_01.txt AC 193 ms 6912 KB
subtask_1_dense_rand_02.txt AC 213 ms 6912 KB
subtask_1_dense_rand_03.txt AC 8 ms 2432 KB
subtask_1_dense_rand_04.txt AC 43 ms 2688 KB
subtask_1_max_01.txt AC 312 ms 7168 KB
subtask_1_max_02.txt AC 312 ms 7168 KB
subtask_1_max_03.txt AC 314 ms 7168 KB
subtask_1_max_04.txt AC 313 ms 7168 KB
subtask_1_min_01.txt AC 2 ms 2304 KB
subtask_1_min_02.txt AC 2 ms 2304 KB
subtask_1_rand_01.txt AC 49 ms 4736 KB
subtask_1_rand_02.txt AC 23 ms 2560 KB
subtask_1_rand_03.txt AC 52 ms 4736 KB
subtask_1_rand_04.txt AC 54 ms 4736 KB
subtask_1_widemax_01.txt AC 313 ms 7168 KB
subtask_1_widemax_02.txt AC 313 ms 7168 KB
subtask_1_widemax_03.txt AC 312 ms 7168 KB
subtask_1_widemax_04.txt AC 313 ms 7168 KB
subtask_1_widemax_05.txt AC 312 ms 7168 KB
subtask_1_widemax_06.txt AC 313 ms 7168 KB
subtask_1_widemax_07.txt AC 312 ms 7168 KB
subtask_1_widemax_08.txt AC 312 ms 7168 KB
subtask_1_widemax_09.txt AC 312 ms 7168 KB
subtask_1_widemax_10.txt AC 312 ms 7168 KB