T1
求出方程a1x1-a2x2+a3x3-a4x4+a5x5-a6x6有多少个不超过m的正整数解。
m<=100,a<=1000000
直接哈希表记录a1x1+a3x3+a5x5的每个值出现次数,再记录a1x1+a3x3+a5x5的每个值出现次数,最后求出有多少解。
等等。。可以用map?
#include<iostream>
#include<cstring>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<queue>
#include<deque>
#include<map>
using namespace std;
map <int,long long> mp;
long long m,a[7];
long long ans=0;
int main(){
freopen("jie.in","r",stdin);
freopen("jie.out","w",stdout);
scanf("%lld",&m);
for(int i=1;i<=6;i++){
scanf("%lld",&a[i]);
}
for(int i=1;i<=m;i++){
for(int j=1;j<=m;j++){
for(int k=1;k<=m;k++){
mp[i*a[1]+j*a[3]+k*a[5]]+=1;
}
}
}
for(int i=1;i<=m;i++){
for(int j=1;j<=m;j++){
for(int k=1;k<=m;k++){
ans+=mp[i*a[2]+j*a[4]+k*a[6]];
}
}
}
cout<<ans;
return 0;
}