社区讨论
第一个样例怎么得出来的......
P2362围栏木桩参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mi6xej7j
- 此快照首次捕获于
- 2025/11/20 12:23 4 个月前
- 此快照最后确认于
- 2025/11/20 12:23 4 个月前
样例 20 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10
样例输出 11 10
不应该是 11 2吗
蒟蒻代码 :
CPP#include<iostream>
#include<stdio.h>
#include<cstring>
using namespace std;
int g,n,i,j,l,k,a[1005];
int b[1005];
struct qwq
{
int sum,next;
}f[10005];
int main()
{
std::ios::sync_with_stdio(false);
cin>>g;
while (g--)
{
memset(b,0,sizeof(b));
cin>>n;
for (i=1; i<=n; i++)
{
cin>>a[i];
f[i].sum=1;
}
for (i=n-1; i>=1; i--)
{
l=0;
for (j=i+1; j<=n; j++)
if (a[i]<=a[j])
if (f[j].sum>l)
{
l=f[j].sum;
k=j;
}
f[i].sum+=l;
}
for (i=1; i<=n; i++)
for (j=i+1; j<=n; j++)
if (a[i]<=a[j])
if (f[i].sum==f[j].sum+1) {b[f[i].sum]++; if (f[i].sum==11)cout<<i<<" "<<j<<endl;}
b[1]=n;
for (i=n; i>=1; i--) if (b[i]>0) {cout<<i<<" "<<b[i]<<endl; break;}
}
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...