垃圾代码
#include<bits/stdc++.h>
using namespace std;
#define rep(i,a,b) for(int i=a;i<=b;++i)
int a,b,c,d;
long long v,t;
const int maxn=1e6+5;
int cnt[maxn];
int main()
{
//freopen("Input.txt","r",stdin);
int T;scanf("%d",&T);
while(T--)
{
scanf("%d%d%d%d%lld%lld",&a,&b,&c,&d,&v,&t);
if(a<c){swap(a,c);swap(b,d);}
if(v>=c){printf("%lld
",1LL*(t/a+1)*b+(t/c+1)*d-1);continue;}
memset(cnt,0,sizeof cnt);
int i=0,tmp;
for(i=1;i<=c&&(tmp=(1LL*a*i)%c)!=0;++i)
{
cnt[i]=cnt[i-1];
if(tmp<=v&&tmp+v>=c)cnt[i]--;
if(tmp>v&&tmp+v<c)cnt[i]++;
//printf("%d
",cnt[i]);
}
//printf("i=%d
",i);
long long m=0;
long long tt=t/c*c;
if((tt/a+1)%i!=0)m=cnt[(int)(tt/a+1)%i-1];
//printf("m=%d
",m);
m=1LL*(tt/a+1)/i*cnt[i-1]+m+tt/c+1;
//printf("m=%d
",m);
if(t%a<t%c)
{
if(t%c-t%a>v)m++;
}
printf("%lld
",1LL*(t/a+1)*b+(t/c+1)*d-m);
}
}