区間別gcdの個数


//
//  main.cpp
//  160929
//
//  Created by liuzhe on 17/3/30.
//  Copyright © 2016  my_code. All rights reserved.
//
//#include 

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
using namespace std;
#define ll long long

const ll INF=0x3f3f3f3f3f3f3f3fll;
const int inf=0x3f3f3f3f;
const int maxn=1e5+5;

vector >G[maxn];
int A[maxn],a[maxn],vit[maxn*10],ans[maxn];

int lowbit(int x)
{
    return x&(-x);
}

void modify(int x,int add)
{
    while(x