顺子
#include <iostream> #include <cstdlib> #include <cstdio> #include <cmath> #include <algorithm> #include <map> using namespace std; typedef long long ll; const int maxn = 10000002; int n,w; ll a[10005]; map<ll,int>mp; int main(){ scanf("%d",&n); for(int i=1;i<=n;i++){ scanf("%lld",&a[i]); mp[a[i]]++; } scanf("%d",&w); int flag=0; if(w==1){printf("true\n");return 0;} if(n%w){printf("false\n");return 0;} sort(a+1,a+1+n); if(n%w==0){ for(int i=1;i<=n;i++){ if(mp[a[i]]==0){ continue; } for(int j=0;j<w;j++){ if(mp[a[i]+j]){ mp[a[i]+j]--; } else{ flag=1; break; } } if(flag){ break; } } if(flag)printf("false\n"); else printf("true\n"); } return 0; }