#1494 : 一面砖墙
思路:很明显就是在每一行的裂缝中画线,求最大值,再n-最大值,前缀和+map.
1 #include<bits/stdc++.h> 2 using namespace std; 3 map<int ,int >a; 4 int b[100002]; 5 6 int main(){ 7 int n,m; 8 scanf("%d",&n); 9 int Max=0; 10 for(int i=1;i<=n;i++){ 11 scanf("%d",&m); 12 for(int j=1;j<=m;j++){ 13 scanf("%d",&b[j]); 14 b[j]=b[j]+b[j-1]; 15 if(j!=m){ 16 a[b[j]]++; 17 18 Max=max(Max,a[b[j]]); 19 } 20 21 } 22 } 23 cout<<n-Max<<endl; 24 return 0; 25 }