Loading... ## Problem A Spotlights 这题是[Codeforces 729B](http://codeforces.com/problemset/problem/729/B)。 ### 题目描述 给出一个 01 矩阵,每个 0 的上下左右四个方向上有 1 的方向数称为它的价值,请你求出这个矩阵中所有 0 的价值之和。 ### 代码 ```cpp #include <bits/stdc++.h> using namespace std; const int MAXN=1005; int main(){ #ifndef OFF_LINE freopen("matrix.in","r",stdin); freopen("matrix.out","w",stdout); #endif ios::sync_with_stdio(false); int n,m,ans=0; bool a[MAXN][MAXN]; cin>>n>>m; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>a[i][j]; } } for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ if(!a[i][j]){ //Left for(int x=i-1;x>0;x--){ if(a[x][j]){ ans++; break; } } //Right for(int x=i+1;x<=n;x++){ if(a[x][j]){ ans++; break; } } //Up for(int x=j-1;x>0;x--){ if(a[i][x]){ ans++; break; } } //Left for(int x=j+1;x<=m;x++){ if(a[i][x]){ ans++; break; } } } } } cout<<ans<<endl; return 0; } ``` ## Problem B 这题是[Codeforces 582B](http://codeforces.com/problemset/problem/582/B)。 ## 代码 ```cpp #include<cstdio> #include<iostream> #include<cstring> #include<cmath> #include<algorithm> using namespace std; int a[10005],f[10005],b[305]; int main() { int n,t,i,j; cin>>n>>t; int len=n*min(n,t); for (i=1;i<=n;i++) { scanf("%d",&a[i]); b[a[i]]++; } int mxa=1; for(i=n+1;i<=len;i++) a[i]=a[i-n]; for (i=1;i<=len;i++) { f[i]=1; for (j=i-1;j>=max(i-n,1);j--) { if (a[i]>=a[j]) f[i]=max(f[i],f[j]+1); } mxa=max(mxa,f[i]); } if (n>=t) cout<<mxa<<endl; else { int mxaa=0; for(i=0;i<305;i++) mxaa=max(mxaa,b[i]); cout<<mxa+mxaa*(t-n)<<endl; } return 0; } ``` ## Problem C 这题是[Codeforces 580D](http://codeforces.com/problemset/problem/580/D)。 ## 代码 <hr class="content-copyright" style="margin-top:50px" /><blockquote class="content-copyright" style="font-style:normal"><p class="content-copyright">版权属于:淡淡的路瑶</p><p class="content-copyright">本文链接:<a class="content-copyright" href="https://www.starroad.top/archives/278.html">https://www.starroad.top/archives/278.html</a></p><p class="content-copyright">如果文章出现任何问题,请下方评论,紧急情况请发邮件。谢谢支持!</p></blockquote> Last modification:January 19th, 2020 at 08:06 am © 允许规范转载 Support 如果您觉得我的文章有用,给颗糖糖吧~ ×Close Appreciate the author Sweeping payments Pay by AliPay Pay by WeChat