From c4fbb0ad7fe9e3f5035a7f431b6887427556690c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anton=20Luka=20=C5=A0ijanec?= Date: Sun, 24 Mar 2024 12:42:20 +0100 Subject: dn04a in dn04b failed attempt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit dn04b: ni vseeno, a se premaknemo levo ali desno, ko a+b ni enako k, treba se je pomakniti v smer, kjer pomik najmanj spremeni vrednost a. ampak obstaja boljši in lažji implementacijski način za dn04b --- "\305\241ola/p2/dn/DN04a_63230317.c" | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 "\305\241ola/p2/dn/DN04a_63230317.c" (limited to 'šola/p2/dn/DN04a_63230317.c') diff --git "a/\305\241ola/p2/dn/DN04a_63230317.c" "b/\305\241ola/p2/dn/DN04a_63230317.c" new file mode 100644 index 0000000..9c1c1b1 --- /dev/null +++ "b/\305\241ola/p2/dn/DN04a_63230317.c" @@ -0,0 +1,30 @@ +#include +#include +int main (void) { + int n; + scanf("%d", &n); + int a[2*n]; + unsigned int lsum = 0; + unsigned int rsum = 0; + for (int i = 0; i < 2*n; i++) + scanf("%d", &a[i]); + for (int k = 0;; k++) { + if (lsum == rsum) { + bool pravilno = true; + for (int j = 0; j < n; j++) { + // fprintf(stderr, "%d\t%d\t%d\t%d\n", j, a[j], (n+(n-k+j) % n), a[(n+(n-k+j) % n)]); + if (a[j] == a[n+(n-k+j) % n]) + continue; + pravilno = false; + break; + } + if (pravilno) { + printf("%d\n", k); + break; + } + } + lsum += a[k]; + rsum += a[2*n-1-k]; + + } +} -- cgit v1.2.3