QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#735272 | #7780. Dark LaTeX vs. Light LaTeX | HNO3il | Compile Error | / | / | C++14 | 1.6kb | 2024-11-11 18:52:37 | 2024-11-11 18:52:37 |
Judging History
This is the latest submission verdict.
- [2024-11-25 20:53:52]
- hack成功,自动添加数据
- (/hack/1258)
- [2024-11-11 18:52:37]
- Judged
- Verdict: Compile Error
- Time: 0ms
- Memory: 0kb
- [2024-11-11 18:52:37]
- Submitted
answer
#include<bits/stdc++.h>
using namespace std;
#define mp make_pair
#define db double
#define endl '\n'
#define lowbit(x) x&-x
#define intz(x,a) memset(x,a,sizeof(x));
const int N=5e3+5;
int lcp[N][N],lens,lent,dp[N][N],cnt[N][N],ct[N][N];long long sum[N];char s[N],t[N];
signed main(){
// freopen("tst.out","r",stdin);
scanf("%s%s",s+1,t+1);lens=strlen(s+1),lent=strlen(t+1);
for(int j=lent;j;j--)
for(int i=lens;i;i--)dp[i][j]=(s[i]==t[j]?dp[i+1][j+1]+1:0),cnt[i][dp[i][j]]++;
for(int j=1;j<=lens;j++){
for(int i=lens-j+1;i;i--)cnt[j][i]+=cnt[j][i+1];
for(int i=j;i<=lens;i++)ct[j][i]=cnt[j][i-j+1];
}
for(int j=lens;j;j--)
for(int i=j;i;i--)lcp[i][j]=(s[i]==s[j]?lcp[i+1][j+1]+1:0);
for(int i=lens;i;i--)
for(int j=i;j;j--)sum[i][j]=sum[i][j+1]+ct[j][i];
long long ans=0;
for(int i=1;i<=lens;i++)
for(int j=i+1;j<=lens;j++){int len=lcp[i][j];ans+=sum[j-1][i+1]-sum[j-1][min(i+len,j-1)+1];}
swap(lens,lent);swap(s,t);intz(lcp,0);intz(cnt,0);intz(dp,0);
for(int j=lent;j;j--)
for(int i=lens;i;i--)dp[i][j]=(s[i]==t[j]?dp[i+1][j+1]+1:0),cnt[i][dp[i][j]]++;
for(int j=1;j<=lens;j++){
for(int i=lens-j+1;i;i--)cnt[j][i]+=cnt[j][i+1];
for(int i=j;i<=lens;i++)ct[j][i]=cnt[j][i-j+1];
}
for(int j=lens;j;j--)
for(int i=j;i;i--)lcp[i][j]=(s[i]==s[j]?lcp[i+1][j+1]+1:0);
for(int i=lens;i;i--)
for(int j=i;j;j--)sum[i][j]=sum[i][j+1]+ct[j][i];
for(int i=1;i<=lens;i++)
for(int j=i+1;j<=lens;j++){int len=lcp[i][j];ans+=sum[j-1][i+1]-sum[j-1][min(i+len,j-1)+1];}
for(int i=1;i<=lens;i++)
for(int j=i+1;j<=lens+1;j++)ans+=ct[i][j-1];
cout<<ans;
return 0;
}
详细
answer.code: In function ‘int main()’: answer.code:22:41: error: invalid types ‘long long int[int]’ for array subscript 22 | for(int j=i;j;j--)sum[i][j]=sum[i][j+1]+ct[j][i]; | ^ answer.code:22:51: error: invalid types ‘long long int[int]’ for array subscript 22 | for(int j=i;j;j--)sum[i][j]=sum[i][j+1]+ct[j][i]; | ^ answer.code:25:75: error: invalid types ‘long long int[int]’ for array subscript 25 | for(int j=i+1;j<=lens;j++){int len=lcp[i][j];ans+=sum[j-1][i+1]-sum[j-1][min(i+len,j-1)+1];} | ^ answer.code:25:89: error: invalid types ‘long long int[int]’ for array subscript 25 | for(int j=i+1;j<=lens;j++){int len=lcp[i][j];ans+=sum[j-1][i+1]-sum[j-1][min(i+len,j-1)+1];} | ^ answer.code:36:41: error: invalid types ‘long long int[int]’ for array subscript 36 | for(int j=i;j;j--)sum[i][j]=sum[i][j+1]+ct[j][i]; | ^ answer.code:36:51: error: invalid types ‘long long int[int]’ for array subscript 36 | for(int j=i;j;j--)sum[i][j]=sum[i][j+1]+ct[j][i]; | ^ answer.code:38:75: error: invalid types ‘long long int[int]’ for array subscript 38 | for(int j=i+1;j<=lens;j++){int len=lcp[i][j];ans+=sum[j-1][i+1]-sum[j-1][min(i+len,j-1)+1];} | ^ answer.code:38:89: error: invalid types ‘long long int[int]’ for array subscript 38 | for(int j=i+1;j<=lens;j++){int len=lcp[i][j];ans+=sum[j-1][i+1]-sum[j-1][min(i+len,j-1)+1];} | ^ answer.code:12:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 12 | scanf("%s%s",s+1,t+1);lens=strlen(s+1),lent=strlen(t+1); | ~~~~~^~~~~~~~~~~~~~~~