七行プログラミング part5at TECH
七行プログラミング part5 - 暇つぶし2ch43:デフォルトの名無しさん
06/04/09 23:47:28
#include <stdio.h>
int a[81];s(n){int i=80,c[10];if(a[n])s(n+1);else if(n>80)for(;~i;i--)printf("\
%d%c",a[i],i%9?0:10);else{for(i=9;i;)c[i--]=0;for(i=8;i--;)c[a[n/9*9+i]]=c[a[n%
9+i*9]]=c[a[n/27*27+n%9/3*3+i%3+i/3*9]]=1;for(i=1;i<=9;i++)c[i]||(a[n]=i,s(n+1)
,a[n]=0);}}main(i){i=80;for(;~i;)scanf("%d",&a[i--]);s(0);}
数独を解くプログラムのつもり。あと2行あるからなんかしたいけど何をしようか思いつかん。
標準入力として↓みたいなファイルを食わせると答えを出す。
0 0 6 0 0 0 0 0 1
0 7 0 0 6 0 0 5 0
8 0 0 1 0 3 2 0 0
0 0 5 0 4 0 8 0 0
0 4 0 7 0 2 0 9 0
0 0 8 0 1 0 7 0 0
0 0 1 2 0 5 0 0 3
0 6 0 0 7 0 0 8 0
2 0 0 0 0 0 4 0 0

ぶっちゃけ七行やったこと殆どないんで無駄が多そう。
ちなみにあほ再帰なんで表出が減るとあほみたいに遅くなります。
将来は数々の人々みたいに立派な七行erになりたい。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch