C/C++の宿題を片付けます 91代目
■ このスレッドは過去ログ倉庫に格納されています
0667657
2007/06/30(土) 12:24:23適当
#include<stdio.h>
typedef unsigned long long state_t;
state_t f(state_t state,int card,int used){
int j;
if(card == 8)return state;
for(j=card+1;j<14;++j){
int newuse = 1<<(j-card-1) | 1<<j;
state_t newcv = (state_t)card << j*4 | (state_t)card << (j-card-1)*4;
if(used & newuse)continue;
newcv = f(state|newcv,card+1,used|newuse);
if(newcv)return newcv;
}
return 0;
}
int main(){
printf("%llx\n",f(0ll,1,0));
return 0;
}
■ このスレッドは過去ログ倉庫に格納されています