xdoj 1024 简单逆序对
来源:互联网 发布:淘宝网四海认证钓具 编辑:程序博客网 时间:2024/05/20 04:46
题目链接:
点击打开链接
大意是求一串由0-9组成的数字的逆序对个数,很多人用线段树之类的数据结构写,但是事实上呢,不用高级数据结构也是很容易就能完成的。大致思路是从后往前遍历数字串,对于每个位置都能得出当前位置小于0-9中的每个数字的后缀和,小于当前位置的数的后缀和即为这个数的逆序对个数,将每个位置的逆序对个数加起来即得结果。
AC代码如下:
#include#include #define N 1000050#define P 1000000007int a[N],n,num[N][10];long long ans=0;int main(){int t;scanf("%d",&t);while(t--){ans=0;memset(num,0,sizeof(num));scanf("%d",&n);for(int i=0;i =0;i--){//从后往前遍历for(int j=0;j<10;j++){//得到每个位置的0-9的小于该数的个数的后缀和,如1存的是0的个数,2存的是0和1的个数......以此类推if(a[i]>j){num[i][j]=num[i+1][j];}else{num[i][j]=num[i+1][j]+1;}}ans=ans+(a[i]>0?num[i][a[i]-1]:0);//当前数的逆序对个数}printf("%lld\n",ans%P);}return 0;}
阅读全文
0 0
- XDOJ 1024: 简单逆序对
- xdoj 1024 简单逆序对
- XDOJ 简单逆序对
- XDOJ 另一个简单游戏
- 逆序数 & 逆序对
- 逆序对
- 逆序对
- 逆序对
- 逆序对
- 逆序对
- 逆序对
- 逆序对
- 逆序对
- 逆序对
- 逆序对
- 逆序对
- 逆序对
- 逆序对
- AngularJS里面的$timeout和$interval服务
- Unity ulua ugui 获取 InputField 框
- hibernate 延迟加载详解
- ThreadLocal线程范围内的共享变量
- 四 大数据分析之 SVD理论
- xdoj 1024 简单逆序对
- SSH与SSM学习之hibernate25——批量抓取
- 关于thinkphp5中model中的hasOne函数的参数说明
- 自定义JSTL函数库
- linux下opencv的交叉编译注意事项
- Linux错误:supervisor:/tmp/unix.sock can't find
- spring-cloud-zuul之spring-cloud-1.3.4(Dalston.SR3)-boot(1.5.6) 学习笔记
- 如何彻底卸载Jenkins(Windows版本)
- NOIP2007提高组 矩阵取数