18/07/22 15:29:39.25 Ott8rTSz.net
/*
底辺私立
× 5
------------
裏口馬鹿
各々の漢字は1~8までの数字を表します。
同じ数字は使われません。
底辺私立・裏口馬鹿に数字をいれて筆算を2通り完成させてください。
*/
#include<stdio.h>
int compare_int(const void *a, const void *b){
return *(int*)a - *(int*)b;
}
int unique(int num[]){
int i,j,n=8;
qsort(num,n,sizeof(int),compare_int);
for(i=0;i<n;i++){
for(j=0;j<i;j++){
if(num[j]==num[j+1]){
return 0;
}}}
return 1;
}
main(){
int A,B,C,D,E,F,G,H;
for(A = 1; A < 9; A++){
for(B = 1; B < 9; B++){
for(C = 1; C < 9; C++){
for(D = 1; D < 9; D++){
for(E = 1; E < 9; E++){
for(F = 1; F < 9; F++){
for(G = 1; G < 9; G++){
for(H = 1; H < 9; H++){
if((A*1000+B*100+C*10+D)*5==E*1000+F*100+G*10+H){
int num[]={A,B,C,D,E,F,G,H};
if(unique(num)==1){
printf("底辺私立 = %2d%2d%2d%2d 裏口馬鹿 = %2d%2d%2d%2d\n", A,B,C,E,F,G,H);
}}
}}} }}} }}
}