Submission #18434713
Source Code Expand
/*
after dusk passed,
there is a starry sky.
*/
#include <bits/stdc++.h>
#define inf 0x3f3f3f3f
#define m_k make_pair
using namespace std;
const int N=200;
int n,m,dp[N][N][N][11];
char a[N][N];
inline int read()
{
int f=1,x=0;char s=getchar();
while(s<'0'||s>'9'){if(s=='-')f=-1;s=getchar();}
while(s>='0'&&s<='9'){x=x*10+s-'0';s=getchar();}
return x*f;
}
inline bool check(int i,int l,int r)
{
for (int j=l;j<r;j++) if (a[i][j]!=a[i][r]) return 0;
return 1;
}
signed main()
{
n=read();m=read();
for (int i=1;i<=n;i++) scanf("%s",a[i]+1);
for (int i=n;i>=1;i--)
{
for (int l=1;l<=m;l++)
{
for (int r=l;r<=m;r++)
{
if (!check(i,l,r)) continue;
if (a[i][l]==a[i+1][l]) dp[i][l][r][0]=dp[i+1][l][r][0]+1;
else dp[i][l][r][0]=1;
}
}
}
if (dp[1][1][m][0]==n)
{
printf("0\n");
return 0;
}
for (int p=1;p<=15;p++)
{
for (int i=1;i<=n;i++)
{
for (int l=1;l<=m;l++)
{
for (int r=l;r<=m;r++)
{
for (int k=l;k<r;k++)
{
int num=min(dp[i][l][k][p-1],dp[i][k+1][r][p-1]);
dp[i][l][r][p]=max(dp[i][l][r][p],num);
}
int j=i+dp[i][l][r][p-1];
dp[i][l][r][p]=max(dp[i][l][r][p],dp[i][l][r][p-1]+dp[j][l][r][p-1]);
}
}
}
if (dp[1][1][m][p]==n)
{
printf("%d\n",p);
return 0;
}
}
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - Complexity |
| User | SevenDawns |
| Language | C++ (GCC 9.2.1) |
| Score | 1000 |
| Code Size | 1355 Byte |
| Status | AC |
| Exec Time | 4719 ms |
| Memory | 253812 KiB |
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:27:30: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
27 | for (int i=1;i<=n;i++) scanf("%s",a[i]+1);
| ~~~~~^~~~~~~~~~~~~
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 1000 / 1000 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample01.txt, sample02.txt |
| All | sample01.txt, sample02.txt, in01.txt, in02.txt, in03.txt, in04.txt, in05.txt, in06.txt, in07.txt, in08.txt, in09.txt, in10.txt, in11.txt, in12.txt, in13.txt, in14.txt, in15.txt, in16.txt, in17.txt, in18.txt, in19.txt, in20.txt, in21.txt, in22.txt, in23.txt, in24.txt, in25.txt, in26.txt, in27.txt, in28.txt, in29.txt, in30.txt, in31.txt, in32.txt, in33.txt, in34.txt, in35.txt, in36.txt, in37.txt, in38.txt, sample01.txt, sample02.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| in01.txt | AC | 2542 ms | 202072 KiB |
| in02.txt | AC | 3786 ms | 212968 KiB |
| in03.txt | AC | 2907 ms | 194796 KiB |
| in04.txt | AC | 3763 ms | 217020 KiB |
| in05.txt | AC | 2442 ms | 181580 KiB |
| in06.txt | AC | 3301 ms | 215684 KiB |
| in07.txt | AC | 4719 ms | 253396 KiB |
| in08.txt | AC | 4698 ms | 253748 KiB |
| in09.txt | AC | 238 ms | 252492 KiB |
| in10.txt | AC | 3 ms | 3524 KiB |
| in11.txt | AC | 1273 ms | 252616 KiB |
| in12.txt | AC | 1530 ms | 253084 KiB |
| in13.txt | AC | 1529 ms | 253212 KiB |
| in14.txt | AC | 1792 ms | 253208 KiB |
| in15.txt | AC | 1787 ms | 253144 KiB |
| in16.txt | AC | 1791 ms | 253136 KiB |
| in17.txt | AC | 1640 ms | 168424 KiB |
| in18.txt | AC | 1223 ms | 151120 KiB |
| in19.txt | AC | 1103 ms | 149300 KiB |
| in20.txt | AC | 848 ms | 139708 KiB |
| in21.txt | AC | 4411 ms | 253796 KiB |
| in22.txt | AC | 236 ms | 252496 KiB |
| in23.txt | AC | 2232 ms | 253192 KiB |
| in24.txt | AC | 3828 ms | 253812 KiB |
| in25.txt | AC | 2100 ms | 200812 KiB |
| in26.txt | AC | 3238 ms | 253188 KiB |
| in27.txt | AC | 2723 ms | 218284 KiB |
| in28.txt | AC | 2969 ms | 237200 KiB |
| in29.txt | AC | 1994 ms | 253204 KiB |
| in30.txt | AC | 1980 ms | 253140 KiB |
| in31.txt | AC | 2805 ms | 253264 KiB |
| in32.txt | AC | 2805 ms | 253204 KiB |
| in33.txt | AC | 3090 ms | 253176 KiB |
| in34.txt | AC | 3112 ms | 253264 KiB |
| in35.txt | AC | 3487 ms | 253204 KiB |
| in36.txt | AC | 3494 ms | 253016 KiB |
| in37.txt | AC | 4378 ms | 253784 KiB |
| in38.txt | AC | 4360 ms | 253808 KiB |
| sample01.txt | AC | 2 ms | 3684 KiB |
| sample02.txt | AC | 3 ms | 3832 KiB |