参考
http://www.cnblogs.com/qscqesze/p/5615894.html
注意1LL是放在n和m的前面的。要不然会提前爆int。。。
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
#define sf scanf
#define pf printf
#define mem(a,b) memset(a,b,sizeof(a));
#define rep(i,a,b) for(int i=(a);i<=(b);++i)
#define MP make_pair
#define ULL unsigned long long
#define LL long long
#define inf 0x3f3f3f3f
#define md ((ll+rr)>>1)
#define ls (i<<1)
#define rs (ls|1)
#define eps 1e-5
#define ree freopen("in.txt","r",stdin);
#define bug pf("----------------");
#define N 100010
int ans;
//2017年09月02日10:58:23
int num[11];
void ok(int x,int y,int n,int m){
mem(num,0);
if(!n)num[0]++;
if(!m)num[0]++;
while(n){
num[x%7]++;
x/=7;
n/=7;
}
while(m){
num[y%7]++;
y/=7;
m/=7;
}
for(int i=0;i<10;++i){
if(num[i]>1)return ;
}
ans++;
}
int main(){
int n,m;
sf("%d%d",&n,&m);
//cout<<1e7<<endl;
if(1LL*n*m>1e7){
puts("0");return 0;
}
for(int i=0;i<n;++i){
for(int j=0;j<m;++j){
ok(i,j,n-1,m-1);
}
}
pf("%d\n",ans);
}