From 7f856c7ff080b8d455b9ed16c2e57dd862c3879d Mon Sep 17 00:00:00 2001 From: omagdy7 Date: Sat, 5 Nov 2022 01:41:11 +0200 Subject: moved some file --- PolyCarpAndDividend/main | Bin 47448 -> 0 bytes PolyCarpAndDividend/main.cpp | 49 ------------------------------------------- 2 files changed, 49 deletions(-) delete mode 100755 PolyCarpAndDividend/main delete mode 100644 PolyCarpAndDividend/main.cpp (limited to 'PolyCarpAndDividend') diff --git a/PolyCarpAndDividend/main b/PolyCarpAndDividend/main deleted file mode 100755 index dc43a20..0000000 Binary files a/PolyCarpAndDividend/main and /dev/null differ diff --git a/PolyCarpAndDividend/main.cpp b/PolyCarpAndDividend/main.cpp deleted file mode 100644 index 81e6a92..0000000 --- a/PolyCarpAndDividend/main.cpp +++ /dev/null @@ -1,49 +0,0 @@ -#include - -using namespace std; - -const int N = 1234567; - -int a[12], p[N], e[N]; -bool vis[N]; - -void print(int x) { - if (x == -1) return; - print(p[x]); - printf("%d", e[x]); -} - -int main() { - int n, m; - scanf("%d", &n); - for (int i = 0; i < n; i++) { - scanf("%d", a + i); - } - sort(a, a + n); - scanf("%d", &m); - int cnt = 0; - queue < pair > q; - q.push(make_pair(-1, 0)); - while (!q.empty()) { - int u = q.front().first; - int x = q.front().second; - q.pop(); - for (int i = 0; i < n; i++) { - int v = (x * 10 + a[i]) % m; - if (u == -1 && a[i] == 0) continue; - if (!vis[v]) { - vis[v] = true; - q.push(make_pair(cnt, v)); - e[cnt] = a[i]; - p[cnt++] = u; - } - if (v == 0) { - print(cnt - 1); - return 0; - } - } - } - puts("-1"); - return 0; -} - -- cgit v1.2.3