75 条题解
-
0ruizhao2 LV 8 @ 2008-11-06 18:36:00
Accepted 有效得分:100 有效耗时:34ms
……
做了好多好多好多好多天…………
O(nlgn)=O(n)*O(lgn)=O(每个元素)*O(查找) -
02008-10-29 21:17:19@
难为我交了3次的朴素解法.......
最后又交了3次nlogn...原因.... -
02008-10-29 11:22:29@
边界啊!边界啊!!二分查找的边界啊!!!
-
02008-10-22 07:55:14@
好炫的题目啊!!
-
02008-10-19 23:14:58@
囧死啊。。另一半没考虑。。。一天报废- -
-
02008-11-13 13:42:10@
AC率从17%->18%
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 72ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 9ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:81ms -
02008-10-17 12:09:50@
├ 测试数据 01:运行超时...
├ 测试数据 02:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:运行超时...少了个等号 做了两天
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 72ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 41ms -
02008-07-16 21:32:46@
=。=地下室
-
-12018-08-13 23:03:35@
如何用22行解决战斗
#include "bits/stdc++.h"
using namespace std;
int n,k,b[300001],a[300001],stack_[300001],top=0;
int main()
{
cin>>n>>k;
for(int i=1;i<=n;i++) cin>>a[i];
int j=1;
for(int i=1;i<k;i++)
if(a[i]<a[k]) b[j++]=a[i];
b[j]=a[k];
for(int i=k+1;i<=n;i++)
if(a[i]>a[k]) b[++j]=a[i];
stack_[0]=-1;
for(int i=1;i<=j;i++)
if(b[i]>stack_[top]) stack_[++top]=b[i];
else{
int k=lower_bound(stack_,stack_+top,b[i])-stack_;
stack_[k]=b[i];
}
cout<<top<<endl;
} -
-12018-02-18 14:06:18@
做了好久,本来是想一直改一开始的代码的,但总有3个点不能通过,后来就换了一个思路,,,感觉自己果然还是菜的不得了的菜鸡。。
#include<bits/stdc++.h> #include<algorithm> using namespace std; int num[300005],a[300005],b[300005]; int main() { int N,k; cin>>N>>k; for(int i=1;i<=N;i++) scanf("%d",&num[i]); int l=0; for(int i=1;i<k;i++) if(num[i]<num[k]) a[++l]=num[i]; a[++l]=num[k]; int loc=l; for(int i=k+1;i<=N;i++) if(num[i]>num[k]) a[++l]=num[i]; // for(int i=1;i<=l;i++) // cout<<a[i]<<" "; b[1]=a[1]; int len=1; for(int i=1;i<=loc;i++) { if(a[i]>b[len]) b[++len]=a[i]; else { int pos=lower_bound(b+1,b+1+len,a[i])-b; b[pos]=a[i]; } } for(int i=loc+1;i<=l;i++) { if(a[i]>b[len]) b[++len]=a[i]; else { int pos=lower_bound(b+1,b+1+len,a[i])-b; b[pos]=a[i]; } } printf("%d\n",len); return 0; }
-
-12009-09-17 22:32:15@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms华丽地秒杀!!!
-
-12009-09-09 19:33:04@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms呼。。
-
-12009-08-13 11:50:37@
puppy太神奇了~~Orz___|\_|
第一次:
├ 测试数据 08:答案正确... 25ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:25ms
HINT:偶想,偶用的是O(nlogn)的方法,怎么不会0ms呢?!!第二次:
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms
HINT:vijos的评测机太过于神奇了。。。偶拜之~~~Orz___|__
=======================晒程序========================
var
n,k,tt,l,r,x,t1,tmp,i:longint;
a:array[0..300001] of longint;
begin
readln(n,k);
a[0]:=-1;
for i:=1 to k do begin
read(x);
if a[tt] -
-12009-08-05 09:54:03@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms鄙视楼下,让我网速这么卡
-
-12009-10-20 19:47:52@
....
-
-12008-10-09 20:24:22@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 88ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 25ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:113ms耗费我多时!
-
-12008-10-09 20:25:47@
编译通过...
├ 测试数据 01:运行超时...
├ 测试数据 02:运行超时...
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:运行超时...
├ 测试数据 09:运行超时...
├ 测试数据 10:运行超时...
---|---|---|---|---|---|---|---|-
Unaccepted 有效得分:50 有效耗时:0ms编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 166ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 119ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:285ms -
-12008-10-16 16:27:51@
O(N^2)+数组开小:
编译通过...
├ 测试数据 01:运行时错误...| 错误号: 216 | 存取非法
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:运行超时...
├ 测试数据 04:运行超时...
├ 测试数据 05:运行时错误...|错误号: -1073741571├ 测试数据 06:运行时错误...|错误号: -1073741571
├ 测试数据 07:运行时错误...| 错误号: 216 | 存取非法
├ 测试数据 08:运行时错误...|错误号: -1073741571
├ 测试数据 09:运行时错误...| 错误号: 216 | 存取非法
├ 测试数据 10:运行时错误...|错误号: -1073741571
---|---|---|---|---|---|---|---|-
Unaccepted 有效得分:10 有效耗时:0ms
O(nlog2n):【Qword!】
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 25ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 56ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:81ms -
-12008-09-16 22:33:54@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-Accepted 有效得分:100 有效耗时:0ms
用最长不降子序列的 O(n lb n)算法就好了,
只要将原数组里的数符合(a[i] -
-12008-09-12 09:51:41@
用nlogn的最长上升就可以了。
从m位置,搜前面以a[m]为终点的最长上升,搜后面以a[m]为起点的最长上升。编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms