QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#89639#5208. Jumbled TreescrescentCompile Error//C++204.2kb2023-03-20 20:18:502023-03-20 20:18:52

詳細信息

answer.code:7:17: error: ‘uint64_t’ does not name a type
    7 |     using u64 = uint64_t;
      |                 ^~~~~~~~
answer.code:3:1: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
    2 | #include <functional>
  +++ |+#include <cstdint>
    3 | #include <vector>
answer.code:10:5: error: ‘u64’ does not name a type
   10 |     u64 m, d;
      |     ^~~
answer.code:11:25: error: expected ‘)’ before ‘d’
   11 |     explicit fastmod(u64 d) : d(d) {
      |                     ~   ^~
      |                         )
answer.code:21:12: error: ‘u64’ does not name a type
   21 |     friend u64 operator/(const u64 n, const fastmod& M) {
      |            ^~~
answer.code:27:12: error: ‘u64’ does not name a type
   27 |     friend u64 operator%(const u64 n, const fastmod& M) { return n - n / M * M.d; }
      |            ^~~
answer.code: In lambda function:
answer.code:91:31: error: no match for ‘operator%’ (operand types are ‘long long int’ and ‘fastmod’)
   91 |                 ret = ret * x % mod;
      |                       ~~~~~~~ ^ ~~~
      |                           |     |
      |                           |     fastmod
      |                           long long int
answer.code:92:23: error: no match for ‘operator%’ (operand types are ‘long long int’ and ‘fastmod’)
   92 |             x = x * x % mod, e >>= 1;
      |                 ~~~~~ ^ ~~~
      |                   |     |
      |                   |     fastmod
      |                   long long int
answer.code: In function ‘int main()’:
answer.code:103:52: error: no match for ‘operator%’ (operand types are ‘long long int’ and ‘fastmod’)
  103 |             long long c = A[j][i] * inv(A[cur][i]) % mod;
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~
      |                                   |                  |
      |                                   long long int      fastmod
answer.code:104:73: error: no match for ‘operator%’ (operand types are ‘long long int’ and ‘fastmod’)
  104 |             for (int k = i; k <= cnt + 1; k++) A[j][k] -= A[cur][k] * c % mod, A[j][k] += A[j][k] < 0 ? p : 0;
      |                                                           ~~~~~~~~~~~~~ ^ ~~~
      |                                                                     |     |
      |                                                                     |     fastmod
      |                                                                     long long int
answer.code:117:79: error: no match for ‘operator%’ (operand types are ‘long long int’ and ‘fastmod’)
  117 |         for (int j = pl + 1; j <= cnt; j++) A[i][cnt + 1] -= A[i][j] * ans[j] % mod;
      |                                                              ~~~~~~~~~~~~~~~~ ^ ~~~
      |                                                                      |          |
      |                                                                      |          fastmod
      |                                                                      long long int
answer.code:119:38: error: no match for ‘operator%’ (operand types are ‘long long int’ and ‘fastmod’)
  119 |         if ((ans[pl] = A[i][cnt + 1] % mod * inv(A[i][pl]) % mod))
      |                        ~~~~~~~~~~~~~ ^ ~~~
      |                                    |   |
      |                                    |   fastmod
      |                                    long long int
answer.code:125:41: error: no match for ‘operator%’ (operand types are ‘long long int’ and ‘fastmod’)
  125 |             printf("%lld", (ans[i] + p) % mod);
      |                            ~~~~~~~~~~~~ ^ ~~~
      |                                    |      |
      |                                    |      fastmod
      |                                    long long int
answer.code:34:10: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   34 |     scanf("%d %d %lld", &n, &m, &p);
      |     ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
answer.code:43:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   43 |         scanf("%d %d %lld", u + i, v + i, x + i);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~