#include <stdio.h>
typedef struct {
int pos[5];
} MinoPos;
typedef struct {
char name;
int used;
int formsize;
MinoPos form[8];
} Piece;
Piece pieces[] =
{
{'X', 0, 1, {{0,6,7, 8,14}}},
{'U', 0, 4, {{0,1,2, 7, 9},{0,1, 7,14,15},{0,2, 7, 8, 9},{0,1, 8,14,15}}},
{'W', 0, 4, {{0,1,8, 9,16},{0,1, 6, 7,13},{0,7, 8,15,16},{0,6, 7,12,13}}},
{'F', 0, 2, {{0,1,8, 9,15},{0,6, 7, 8,13}}},
{'Z', 0, 4, {{0,1,8,15,16},{0,5, 6, 7,12},{0,1, 7,13,14},{0,7, 8, 9,16}}},
{'P', 0, 8, {{0,1,2, 7, 8},{0,7, 8,14,15},{0,1, 6, 7, 8},{0,1, 7, 8,15},{0,1,2,8, 9},{0,1, 7, 8,14},{0,1,7,8, 9},{0,6, 7,13,14}}},
{'N', 0, 8, {{0,1,2, 9,10},{0,6, 7,13,20},{0,1, 8, 9,10},{0,7,13,14,20},{0,1,2,6, 7},{0,7,14,15,22},{0,1,5,6, 7},{0,7, 8,15,22}}},
{'Y', 0, 8, {{0,1,2, 3, 8},{0,7,14,15,21},{0,5, 6, 7, 8},{0,6, 7,14,21},{0,1,2,3, 9},{0,7, 8,14,21},{0,6,7,8, 9},{0,7,13,14,21}}},
{'T', 0, 4, {{0,1,2, 8,15},{0,7, 8, 9,14},{0,7,13,14,15},{0,5, 6, 7,14}}},
{'L', 0, 8, {{0,1,2, 3, 7},{0,7,14,21,22},{0,4, 5, 6, 7},{0,1, 8,15,22},{0,1,2,3,10},{0,1, 7,14,21},{0,7,8,9,10},{0,7,14,20,21}}},
{'V', 0, 4, {{0,1,2, 7,14},{0,7,14,15,16},{0,7,12,13,14},{0,1, 2, 9,16}}},
{'I', 0, 2, {{0,1,2, 3, 4},{0,7,14,21,28}}},
};
int board[77];
int counter, try_counter;
void init_board(void);
void print_board(void);
void try_piece(int level);
int board_index(int find_num);
void init_board(void)
{
int i;
for(i=0; i<77; i++){
if(((i + 1) % 7) == 0 || i >= 70){
board[i] = 100;
}
}
}
void print_board(void)
{
int row, col;
printf("No. %d\n", counter);
for(row=0; row<6; row++){
for(col=0; col<70; col += 7){
printf(" %c", pieces[board[row + col] - 1].name);
}
printf("\n");
}
printf("\n");
}
int board_index(int find_num)
{
int i;
for(i=0; i<77; i++){
if(board[i] == find_num){
return i;
}
}
return 0;
}
void try_piece(int level)
{
int i, j, k, x;
try_counter++;
x = board_index(0);
for(i=0; i<12; i++){
if(pieces[i].used == 1){continue;}
for(j=0; j<pieces[i].formsize; j++){
if(board[x + pieces[i].form[j].pos[0]] ||
board[x + pieces[i].form[j].pos[1]] ||
board[x + pieces[i].form[j].pos[2]] ||
board[x + pieces[i].form[j].pos[3]] ||
board[x + pieces[i].form[j].pos[4]]){continue;}
// ピースを置く
for(k=0; k<5; k++){board[x + pieces[i].form[j].pos[k]] = i + 1;}
pieces[i].used = 1;
// すべてのピースを置ききったらTrueを返す(recursiveコールの終了)
if(level == 11){
counter++;
print_board();
// ピースを戻す
for(k=0; k<5; k++){board[x + pieces[i].form[j].pos[k]] = 0;}
pieces[i].used = 0;
return;
}
// 次のピースを試す
try_piece(level + 1);
// ピースを戻す
for(k=0; k<5; k++){board[x + pieces[i].form[j].pos[k]] = 0;}
pieces[i].used = 0;
}
}
}
int main(int argc, char **argv)
{
init_board();
try_piece(0);
printf("解合計: %d\n", counter);
printf("操作数: %d\n", try_counter);
}
これを
gcc -O2 kokoa1.c
time ./a.out
と実行すると、
time : 用語 'time' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。名前が正しく記
述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行してください。
発生場所 行:1 文字:1
+ time ./a.out
+ ~~~~
+ CategoryInfo : ObjectNotFound: (time:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
というエラーが出るのですがなぜですか?
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
Uninx系OSの標準コマンドに、time というのがあります。
これは
time 実行したいコマンド
で実行すると、「実行したいコマンド」の実行時間を出力するというものです。
https://linuxjm.osdn.jp/html/LDP_man-pages/man1/ …
> time : 用語 'time' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。
とあるように、Windowsにtimeコマンドが無いのでしょう。
No.2
- 回答日時:
>というエラーが出るのですがなぜですか?
timeコマンドのパラメタが正しくないから
でしょうかね。
OSが書かれていないので確実な回答になりませんが、Windowsとすると、
>Windowsにtimeコマンドが無いのでしょう。
Windowsにtimeコマンドはありますが
システム時刻を表示または設定するコマンド
で、意味が違います。
ーーーーーーーーーーーー
TIME [/T | 時刻]
パラメーターの指定がなければ、現在の設定が表示され、新しい時刻を入力できる
プロンプトになります。変更しない場合は、Enter キーを押してください。
コマンド拡張機能を有効にすると、TIME コマンドは、/T スイッチを
サポートするようになります。このスイッチを指定すると、現在の時刻
だけが表示され、新しい時刻を入力するためのプロンプトは表示されません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「指定されたキャストは有効で...
-
C言語での引数の省略方法
-
複数桁10進数の*桁目だけを抽出...
-
#define _CRT_SECURE_NO_WARNIN...
-
実数の整数部,小数部の取得
-
std::set<int> で、ある値が何...
-
return 1L
-
c言語の配列を使ってサイコロを...
-
Win32APIで作るコンボボックス...
-
構造体の勉強中です 合計点の高...
-
C言語で三目並べをするプログラ...
-
(int *)の意味
-
【C++】関数ポインタの使い方
-
int型の変数値をバイト列として...
-
HANDLEて何ですか?
-
if と配列の組み合わせ
-
C2601 ローカル関数の定義について
-
PowerShellがうまくいかない
-
構造体にたいして、ビット演算...
-
メルセンヌ・ツイスタの乱数生...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「指定されたキャストは有効で...
-
C言語での引数の省略方法
-
#define _CRT_SECURE_NO_WARNIN...
-
AtCoderABC135の問題Cについて
-
C言語 エラーの原因がわからな...
-
複数桁10進数の*桁目だけを抽出...
-
【C++】関数ポインタの使い方
-
実数の整数部,小数部の取得
-
ラップ関数とはどんなものですか?
-
if と配列の組み合わせ
-
return 1L
-
read関数をノンブロッキングで...
-
(int *)の意味
-
std::set<int> で、ある値が何...
-
Win32APIで作るコンボボックス...
-
C++でvectorにテキストファイル...
-
「{ } で囲むだけ」は正しい?
-
足して100になるような乱数のア...
-
Arduinoのプログラムにエラーが...
-
課題でつまってます・・・
おすすめ情報