From 518d98ad5f9eec0cf4124375bdbb84d1296b3f3f Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Thu, 4 Jul 2024 17:09:55 +0200 Subject: (almost) added getcube --- test/010_math_permtoindex/00_noperm.in | 4 ++++ test/010_math_permtoindex/00_noperm.out | 1 + test/010_math_permtoindex/01_toobig.in | 16 ++++++++++++++++ test/010_math_permtoindex/01_toobig.out | 1 + test/010_math_permtoindex/02_offrange.in | 4 ++++ test/010_math_permtoindex/02_offrange.out | 1 + test/010_math_permtoindex/03_2_solved.in | 3 +++ test/010_math_permtoindex/03_2_solved.out | 1 + test/010_math_permtoindex/04_2_swapped.in | 3 +++ test/010_math_permtoindex/04_2_swapped.out | 1 + test/010_math_permtoindex/05_7_solved.in | 8 ++++++++ test/010_math_permtoindex/05_7_solved.out | 1 + test/010_math_permtoindex/06_7_reversed.in | 8 ++++++++ test/010_math_permtoindex/06_7_reversed.out | 1 + test/010_math_permtoindex/07_4_random.in | 5 +++++ test/010_math_permtoindex/07_4_random.out | 1 + test/010_math_permtoindex/permtoindex_tests.c | 19 +++++++++++++++++++ 17 files changed, 78 insertions(+) create mode 100644 test/010_math_permtoindex/00_noperm.in create mode 100644 test/010_math_permtoindex/00_noperm.out create mode 100644 test/010_math_permtoindex/01_toobig.in create mode 100644 test/010_math_permtoindex/01_toobig.out create mode 100644 test/010_math_permtoindex/02_offrange.in create mode 100644 test/010_math_permtoindex/02_offrange.out create mode 100644 test/010_math_permtoindex/03_2_solved.in create mode 100644 test/010_math_permtoindex/03_2_solved.out create mode 100644 test/010_math_permtoindex/04_2_swapped.in create mode 100644 test/010_math_permtoindex/04_2_swapped.out create mode 100644 test/010_math_permtoindex/05_7_solved.in create mode 100644 test/010_math_permtoindex/05_7_solved.out create mode 100644 test/010_math_permtoindex/06_7_reversed.in create mode 100644 test/010_math_permtoindex/06_7_reversed.out create mode 100644 test/010_math_permtoindex/07_4_random.in create mode 100644 test/010_math_permtoindex/07_4_random.out create mode 100644 test/010_math_permtoindex/permtoindex_tests.c (limited to 'test/010_math_permtoindex') diff --git a/test/010_math_permtoindex/00_noperm.in b/test/010_math_permtoindex/00_noperm.in new file mode 100644 index 0000000..f838f21 --- /dev/null +++ b/test/010_math_permtoindex/00_noperm.in @@ -0,0 +1,4 @@ +3 +0 +1 +1 diff --git a/test/010_math_permtoindex/00_noperm.out b/test/010_math_permtoindex/00_noperm.out new file mode 100644 index 0000000..3a2e3f4 --- /dev/null +++ b/test/010_math_permtoindex/00_noperm.out @@ -0,0 +1 @@ +-1 diff --git a/test/010_math_permtoindex/01_toobig.in b/test/010_math_permtoindex/01_toobig.in new file mode 100644 index 0000000..a0fb28c --- /dev/null +++ b/test/010_math_permtoindex/01_toobig.in @@ -0,0 +1,16 @@ +15 +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 diff --git a/test/010_math_permtoindex/01_toobig.out b/test/010_math_permtoindex/01_toobig.out new file mode 100644 index 0000000..3a2e3f4 --- /dev/null +++ b/test/010_math_permtoindex/01_toobig.out @@ -0,0 +1 @@ +-1 diff --git a/test/010_math_permtoindex/02_offrange.in b/test/010_math_permtoindex/02_offrange.in new file mode 100644 index 0000000..66ec716 --- /dev/null +++ b/test/010_math_permtoindex/02_offrange.in @@ -0,0 +1,4 @@ +3 +0 +4 +1 diff --git a/test/010_math_permtoindex/02_offrange.out b/test/010_math_permtoindex/02_offrange.out new file mode 100644 index 0000000..3a2e3f4 --- /dev/null +++ b/test/010_math_permtoindex/02_offrange.out @@ -0,0 +1 @@ +-1 diff --git a/test/010_math_permtoindex/03_2_solved.in b/test/010_math_permtoindex/03_2_solved.in new file mode 100644 index 0000000..4c5d59c --- /dev/null +++ b/test/010_math_permtoindex/03_2_solved.in @@ -0,0 +1,3 @@ +2 +0 +1 diff --git a/test/010_math_permtoindex/03_2_solved.out b/test/010_math_permtoindex/03_2_solved.out new file mode 100644 index 0000000..573541a --- /dev/null +++ b/test/010_math_permtoindex/03_2_solved.out @@ -0,0 +1 @@ +0 diff --git a/test/010_math_permtoindex/04_2_swapped.in b/test/010_math_permtoindex/04_2_swapped.in new file mode 100644 index 0000000..ae13693 --- /dev/null +++ b/test/010_math_permtoindex/04_2_swapped.in @@ -0,0 +1,3 @@ +2 +1 +0 diff --git a/test/010_math_permtoindex/04_2_swapped.out b/test/010_math_permtoindex/04_2_swapped.out new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/test/010_math_permtoindex/04_2_swapped.out @@ -0,0 +1 @@ +1 diff --git a/test/010_math_permtoindex/05_7_solved.in b/test/010_math_permtoindex/05_7_solved.in new file mode 100644 index 0000000..54b5db0 --- /dev/null +++ b/test/010_math_permtoindex/05_7_solved.in @@ -0,0 +1,8 @@ +7 +0 +1 +2 +3 +4 +5 +6 diff --git a/test/010_math_permtoindex/05_7_solved.out b/test/010_math_permtoindex/05_7_solved.out new file mode 100644 index 0000000..573541a --- /dev/null +++ b/test/010_math_permtoindex/05_7_solved.out @@ -0,0 +1 @@ +0 diff --git a/test/010_math_permtoindex/06_7_reversed.in b/test/010_math_permtoindex/06_7_reversed.in new file mode 100644 index 0000000..ed11605 --- /dev/null +++ b/test/010_math_permtoindex/06_7_reversed.in @@ -0,0 +1,8 @@ +7 +6 +5 +4 +3 +2 +1 +0 diff --git a/test/010_math_permtoindex/06_7_reversed.out b/test/010_math_permtoindex/06_7_reversed.out new file mode 100644 index 0000000..ad2ea70 --- /dev/null +++ b/test/010_math_permtoindex/06_7_reversed.out @@ -0,0 +1 @@ +5039 diff --git a/test/010_math_permtoindex/07_4_random.in b/test/010_math_permtoindex/07_4_random.in new file mode 100644 index 0000000..614bc61 --- /dev/null +++ b/test/010_math_permtoindex/07_4_random.in @@ -0,0 +1,5 @@ +4 +0 +2 +3 +1 diff --git a/test/010_math_permtoindex/07_4_random.out b/test/010_math_permtoindex/07_4_random.out new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/test/010_math_permtoindex/07_4_random.out @@ -0,0 +1 @@ +3 diff --git a/test/010_math_permtoindex/permtoindex_tests.c b/test/010_math_permtoindex/permtoindex_tests.c new file mode 100644 index 0000000..98c8207 --- /dev/null +++ b/test/010_math_permtoindex/permtoindex_tests.c @@ -0,0 +1,19 @@ +#include "../test.h" + +int64_t permtoindex(uint8_t *, int64_t); + +void run(void) { + char str[STRLENMAX]; + uint8_t a[100]; + int64_t n, i, p; + + fgets(str, STRLENMAX, stdin); + n = atoll(str); + for (i = 0; i < n; i++) { + fgets(str, STRLENMAX, stdin); + a[i] = atoi(str); + } + + p = permtoindex(a, n); + printf("%" PRId64 "\n", p); +} -- cgit v1.3