HDU5288.OO’s Sequence(多校第一题)
来源:互联网 发布:网络机漏洞检测软件 编辑:程序博客网 时间:2024/05/16 08:31
枚举每一个i,用筛选法算出每一个a[i]满足的足有端点,记为l,r,
则对于这个端点有(i-l+1)*(r-i+1)个数满足题目所要求的
以此类推
#include <map>#include <set>#include <stack>#include <queue>#include <cmath>#include <ctime>#include <vector>#include <cstdio>#include <cctype>#include <cstring>#include <cstdlib>#include <iostream>#include <algorithm>using namespace std;#define INF 0x3f3f3f3f#define inf -0x3f3f3f3f#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1#define mem0(a) memset(a,0,sizeof(a))#define mem1(a) memset(a,-1,sizeof(a))#define mem(a, b) memset(a, b, sizeof(a))typedef long long ll;const int maxn=100010;const __int64 MOD=1000000007;int a[maxn];int vis[100100];int leften[maxn];int righten[maxn];int main(){ int n; while(scanf("%d",&n)!=EOF){ int maxv=0; for(int i=0;i<n;i++){ scanf("%d",&a[i]); maxv=max(a[i],maxv); } mem1(vis); for(int i=0;i<n;i++){ if(vis[a[i]]==-1) leften[i]=i+1; else leften[i]=i-vis[a[i]]; for(int j=a[i];j<=maxv;j+=a[i]) vis[j]=i; } mem1(vis); for(int i=n-1;i>=0;i--){ if(vis[a[i]]==-1) righten[i]=n-i; else righten[i]=vis[a[i]]-i; for(int j=a[i];j<=maxv;j+=a[i]) vis[j]=i; } __int64 ans=0; for(int i=0;i<n;i++){ ans+=(__int64)leften[i]*(__int64)righten[i]; ans%=MOD; } printf("%I64d\n", ans); } return 0;}[ Copy to Clipboard ] [ Save to File]
0 0
- HDU5288.OO’s Sequence(多校第一题)
- hdu5288 OO’s Sequence 二分 多校联合第一场
- HDU5288 OO’s Sequence
- HDU5288 OO’s Sequence
- hdu5288 OO’s Sequence
- HDU5288 OO’s Sequence(暴力枚举)
- HDU5288:OO’s Sequence(思维)
- 搜索 - hdu5288 OO’s Sequence
- HDU5288 OO’s Sequence 二分
- [杂题] HDU5288: OO’s Sequence
- 2015年多校联合训练第一场OO’s Sequence(hdu5288)
- OO’s Sequence(多校第一场A题)
- hdu5288(2015多校1)OO’s Sequence
- 解题报告 之 HDU5288 OO' s Sequence
- 【思路题】【多校第一场】【1001.OO’s Sequence】
- hdu 5288 OO’s Sequence(2015多校第一场第1题)枚举因子
- HDU5288 OO’s Sequence(序列的整除对数计数) 多校赛1最水题
- 2015 Multi-University Training Contest 1 Hdu5288 OO’s Sequence
- hdu 5289 Assignment(15多校第一场1002)
- snmp
- 2015/7/22/异常/重写/字符串加减乘除运算
- 1234 开门人和关门人
- http 1.1 新建连接会话失败总结
- HDU5288.OO’s Sequence(多校第一题)
- 细说Cocos2d-JS——序
- mssql2008细节问题
- gif开源组件----android-gif-drawable
- adjtimex简介
- hdu 5293 Tree chain problem(15多校第一场1006)(树形dp+树状数组+LCA)
- [BZOJ602][Usaco2008 Oct]牧场行走
- 青年歌手大奖赛_评委会打分
- 【Xilinx】【Spartan6】BUFG网络上的时钟信号如何通过普通IO输出