#include<stdio.h> #include<math.h> #define mod 1000000007 #define MAX 100001 int a[MAX]; int main() { int n,i,j,l,r; long long sum; while(scanf("%d",&n)!=EOF) { sum=0; for(i=1;i<=n;i++) scanf("%d",&a[i]); for(i=1;i<=n;i++) { l=1,r=n; for(j=i-1;j>0;j--) if(a[i]%a[j]==0) { l=j+1; break; } for(j=i+1;j<n+1;j++) if(a[i]%a[j]==0) { r=j-1; break; } sum=(sum+(i-l+1)*(r-i+1))%mod; } printf("%lld\n",sum); } return 0; } |
Double click to view unformatted code.