hdu 2227
2024-08-26 13:03:54
和之前的hdu3030都快一样了
可以参考之前的题解
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
using namespace std;
const int maxn = 1e5+;
long long n;
long long a[maxn];
long long b[maxn];
long long c[maxn];
long long mod = 1e9+;
void add(long long c[],long long i,long long j);
long long getsum(long long c[],long long i);
int main()
{
int i,j,k;
while(scanf("%lld",&n) != EOF)
{
memset(c, , sizeof(c));
for(i=;i<=n;++i)
{
scanf("%lld",a+i);
b[i] = a[i];
}
sort(b+,b+n+);
long long sum = ;
for(i=;i<=n;++i)
{
long long ans=;
long long pos=lower_bound(b+,b+n+,a[i]) - b;
ans = getsum(c,pos);
sum += ans+;
sum %= mod;
add(c, pos, ans+);
}
printf("%lld\n",sum);
}
}
long long lowbit(long long k)
{
return k&(-k);
}
void add(long long c[],long long i,long long j)
{
while(i<=n)
{
c[i] += j;
c[i] %= mod;
i += lowbit(i);
}
}
long long getsum(long long c[],long long i)
{
long long sum = ;
while(i > )
{
sum += c[i];
sum %= mod;
i -= lowbit(i);
}
return sum;
}
最新文章
- linux 字符设备驱动写法
- IIS内存溢出-设置IIS的应用程序池
- javascript第四弹——变量、作用域、内存
- python中pip的安装
- hdu--1421--dp--搬寝室
- tensorflow实现最基本的神经网络 + 对比GD、SGD、batch-GD的训练方法
- Hazelcast源码剖析之Eviction
- 悲观的并发策略——Synchronized互斥锁
- Urllib库的使用
- ubuntu apt update failed to fetch
- vue-resource post请求后台接口报400(跨域问题解决方法)
- React native 中使用Fetch请求数据
- 双十一福利,阿里云1核2G一年最低只要99
- 下载安装mysql的一些坑
- Linux dd命令制作U盘启动盘
- MS14-021: Internet Explorer 安全更新: 2014 年 5 月 1 日
- Latency Compensating Methods in Client/Server In-game Protocol Design and Optimization【转】
- html中内联元素和块元素的区别、用法以及联系
- php array转化为utf-8编码以便于转化为json数据
- 深度学习:Keras入门(一)之基础篇【转】
热门文章
- (转)Eclipse中需要查看某个类的源码,直接按住Ctrl 然后点击想要查看的类或则方法
- git报“commiter email ";root@localhost.localdomain";does not match your user account”
- BZOJ1899或洛谷2577 [ZJOI2005]午餐
- C++/CLI学习入门
- JianShu_failban2实现动态屏蔽的功能
- Java时代即将来临
- MySQL8.0的安装与配置(Windows 10)
- freemarker【FTL】常见语法大全
- jquery plugin 之 form表单验证插件
- SQL判断如果一列值为null则取另一列值代替 isnull()