zabzab,今天是星期六,放假。
看了看wikipedia才知道,历史上的今天,特殊极了!
历史上的今天
1898年法国科学院物理学家皮埃尔·居里和玛丽·居里(图)公开新发现的化学元素镭。
1919年美国棒球球队波士顿红袜将贝比·鲁斯卖给纽约洋基,随后开始传出贝比鲁斯魔咒。
1991年苏联最高苏维埃通过决议宣布苏联停止存在,苏联正式解体。
送别在下的“一辈子”服务器:192.144.164.198后,伤感,是的,失落,是的。
现在,新的服务器新的生活!
讨厌宝塔强制登陆,用其一劳永逸:
rm -f /www/server/panel/data/bind.pl
题目描述
某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。 输入格式输入数据为两行,
第一行为导弹的数目N(n<=1000)
第二行导弹依次飞来的高度,所有高度值均为不大于30000的正整数。 输出格式输出只有一行是这套系统最多能拦截的导弹数和要拦截所有导弹最少要配备这种导弹拦截系统的套数。两个数据之间用一个空格隔开. 样例输入
8
389 207 155 300 299 170 158 65
样例输出
6 2
#include<iostream>
using namespace std;
int n;
int h[1001],ht[1001],best[1001];
int ans=0;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
cin>>h[i];
best[0]=0x7fffffff;
for(int i=1;i<=n;i++)
for(int j=ans;j>=0;j--)
if(best[j]>=h[i]){best[j+1]=h[i];ans=max(ans,j+1);break;}
cout<<ans;
ans=0;
for(int i=1;i<=n;i++)
{
for(int j=0;j<=ans;j++)
{
if(ht[j]>=h[i]){ht[j]=h[i];break;}
}
if(ht[ans]<h[i])ht[++ans]=h[i];
}
cout<<' '<<ans;
return 0;
}
1知我者谓我心忧,不知我者谓我何求
2蜂采百花酿甜蜜,人读群书明真理
3大家即将各自展开旅程,挥别这个没落的殿堂
4真理不会因为无人歌颂而变成非议
5我用剩下的十分之一寿命,略懂了一点人间
此处在下略寫,但请諸君欣赏且無。