Submission #22767

#TimeUsernameProblemLanguageResultExecution timeMemory
22767최숭실 (#40)Unifying Values (KRIII5_UV)C++14
0 / 7
0 ms2360 KiB
#include<iostream> #include<algorithm> #include<math.h> #define MOD 1000000007 using namespace std; long long int Data[10010]; long long int Sum[10010]; long long int ans; int main() { int n; scanf("%d", &n); for (int i = 0; i < n; i++) { scanf("%lld", &Data[i]); if (i == 0)Sum[i] = Data[i]; else Sum[i] = Sum[i - 1] + Data[i]; } long long int target = 0; for (int i = 0; i < n-1; i++) { target += Data[i]; if ((Sum[n - 1] - Sum[i]) % target != 0)continue; int zero = 0; long long int tmp_sum = 0; for (int j = i + 1; j < n; j++) { tmp_sum += Data[j]; if (tmp_sum == target) tmp_sum = 0; if (Data[j] == 0)zero++; } if (tmp_sum != 0)continue; ans += pow(2, zero); ans %= MOD; } cout << ans; return 0; }

Compilation message (stderr)

UV.cpp: In function 'int main()':
UV.cpp:12:17: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d", &n);
                 ^
UV.cpp:15:26: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%lld", &Data[i]);
                          ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...