From 825ad379983681769e83cc7fe1949c5922062799 Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Fri, 24 Dec 2021 15:33:09 +0100 Subject: Changed default behavior of -s --- src/commands.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src') diff --git a/src/commands.c b/src/commands.c index 193ee97..6afd5cd 100644 --- a/src/commands.c +++ b/src/commands.c @@ -115,6 +115,7 @@ CommandArgs * solve_parse_args(int c, char **v) { int i; + bool infinitesols, fixedmsols; long val; CommandArgs *a = new_args(); @@ -130,6 +131,9 @@ solve_parse_args(int c, char **v) a->opts->print_number = true; a->opts->count_only = false; + fixedmsols = false; + infinitesols = false; + for (i = 0; i < c; i++) { if (!strcmp(v[i], "-m") && i+1 < c) { val = strtol(v[++i], NULL, 10); @@ -149,6 +153,7 @@ solve_parse_args(int c, char **v) return a; } a->opts->max_moves = val; + infinitesols = true; } else if (!strcmp(v[i], "-t") && i+1 < c) { val = strtol(v[++i], NULL, 10); if (val < 1 || val > 64) { @@ -166,8 +171,10 @@ solve_parse_args(int c, char **v) return a; } a->opts->max_solutions = val; + fixedmsols = true; } else if (!strcmp(v[i], "-o")) { a->opts->optimal_only = true; + infinitesols = true; } else if (!strcmp(v[i], "-n")) { a->opts->can_niss = true; } else if (!strcmp(v[i], "-v")) { @@ -183,6 +190,9 @@ solve_parse_args(int c, char **v) } } + if (infinitesols && !fixedmsols) + a->opts->max_solutions = 1000000; /* 1M = +infty */ + a->success = read_scramble(c-i, &v[i], a); return a; } -- cgit v1.3