思路:
很简单的一个状态压缩,比赛时没想出来。
最多只有2^10个状态,n^2暴力一下也就1e6。
代码:
#includeusing namespace std;#define ll long long#define pb push_back#define mem(a,b) memset(a,b,sizeof(a))const int N=1e6+5;int cnt[1024];ll a[N];void f(ll n){ int t=0; while(n) { t|=(1<<(n%10)); n/=10; } cnt[t]++;}int main(){ ios::sync_with_stdio(false); cin.tie(0); int n; while(cin>>n) { for(int i=0;i >a[i]; mem(cnt,0); for(int i=0;i