题目名称 1144. [尼伯龙根之歌] 精灵魔法
输入输出 alfheim.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 10
题目来源 GravatarMakazeu 于2012-10-15加入
开放分组 全部用户
提交状态
分类标签
分治 排序 树状数组 离散化
分享题解
通过:145, 提交:435, 通过率:33.33%
Gravatar派特三石 100 0.154 s 1.29 MiB C++
Gravatar‎MistyEye 100 0.158 s 1.46 MiB C++
Gravatardestiny 100 0.166 s 1.02 MiB C++
Gravatar【离开·再见】星裔·自由蒂兰 100 0.170 s 1.02 MiB C++
GravatarSPA 100 0.172 s 1.84 MiB C++
Gravatar假面骑士 影月 100 0.181 s 1.02 MiB C++
Gravatar面对疾风吧 疾风 疾风吧 100 0.181 s 1.29 MiB C++
Gravatarrvalue 100 0.186 s 1.54 MiB C++
Gravatarrewine 100 0.186 s 1.97 MiB C++
Gravatar森林 100 0.192 s 1.46 MiB C++
关于 精灵魔法 的近10条评论(全部评论)
GravatarAntiLeaf
2017-05-25 15:54 21楼
GravatarAntiLeaf
2017-05-25 15:42 20楼
Gravatar哒哒哒哒哒!
2017-03-12 21:37 19楼
GravatarGo灬Fire
2016-06-13 06:22 18楼
梦避,忘开long long!
Gravatar
2016-06-12 13:59 17楼
GravatarHzoi_Yniverse
2016-02-20 14:31 16楼
[size=32]不要方 结果是long long[/size]
GravatarSOBER GOOD BOY
2016-02-20 14:12 15楼
GravatarGo灬Fire
2016-02-20 13:52 14楼
问问各位神犇,为什么求完getsum之后要将i减回去呀?
for(int i=1;i<=n;i++){
k+=getsum(b[i]-1);
del(b[i]);//这里为什么必须有这个?
}
del函数如下:
void del(int x){
for(int i=x;i<=n;i+=lowbit(i))c[i]-=1;
}
Gravatar浮生随想
2016-02-20 11:51 13楼
回复 @liu_runda :
果然学霸
Gravatar洛克索耶夫
2016-02-20 11:26 12楼

1144. [尼伯龙根之歌] 精灵魔法

★   输入文件:alfheim.in   输出文件:alfheim.out   简单对比
时间限制:1 s   内存限制:128 MiB

【题目背景】

『谜题在丛林中散发芳香

绿叶上露珠跳跃着歌唱

火焰在隐暗的角落升腾飞起

月华照射着神祇们忠诚的信徒。』

    ————《瓦尔基里福音书·第六乐章:幻想》————

【题目描述】

Tristan 解决了英灵殿的守卫安排后,便到达了静谧的精灵领地——Alfheim。由于Midgard处在Alfheim 和冥界Hel 的中间,精灵族领地尚未受到冥界恶灵的侵入。族长Galanodel 为了帮助米德加尔特抵御外敌,对邪恶亡灵军团使用了高等魔法,从而使得亡灵军团每个士兵的行进速度变得不一致,从而打乱冥王Hel 安排的最佳阵型。由于这个军团离Midgard 还很远,因此在抵达Midgard 之前,对于A、B 两个亡灵,若A 的初始位置在B 后面且A 的速度比B 快,A 就会冲到B 的前面去。现在Galanodel 想知道,会有多少对亡灵之间出现反超现象?

【输入格式】

第一行一个整数n,表示排成一队的邪恶亡灵军团有多少人。

第二行 n 个整数a[i],表示邪恶亡灵们在数轴上的初始坐标。数据保证这些坐标全部不同。亡灵军团向数轴正方向前进。

第三行 n 个整数v[i],表示邪恶亡灵们的行进速度。

【输出格式】

一行一个正整数k,表示「反超」的个数。

【样例输入】

3
1 2 3
2 1 3

【样例输出】

1

【数据范围与约定】

对于30%的数据,1<= N<= 1000;

对于100%的数据,1<=N<= 10^5。

所有数据的绝对值均不超过maxlongint。

【题目来源】

《末世神话:精灵族的急援》