Submission #292750

#TimeUsernameProblemLanguageResultExecution timeMemory
292750SaboonAncient Books (IOI17_books)C++17
Compilation error
0 ms0 KiB
//#include "books.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; const int maxn = 1e6 + 10; bool visited[maxn], root[maxn]; long long minimum_walk(vector<int> p, int s){ int n = p.size(); set<int> S; ll answer = 0; for (int i = 0; i < n; i++) answer += abs(p[i]-i); int tmp = 0, Max = -1; for (int i = 0; i < n; i++){ if (!visited[i] and p[i] != i){ if (i < Max) tmp = i; int x = i; while (!visited[x]){ visited[x] = 1; Max = max(Max, x); x = p[x]; } } } answer += 2*tmp; return answer; } int main(){ int n, s; assert(2 == scanf("%d %d", &n, &s)); vector<int> p((unsigned) n); for(int i = 0; i < n; i++) assert(1 == scanf("%d", &p[(unsigned) i])); long long res = minimum_walk(p, s); printf("%lld\n", res); return 0; }

Compilation message (stderr)

books.cpp: In function 'long long int minimum_walk(std::vector<int>, int)':
books.cpp:13:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   13 |     for (int i = 0; i < n; i++)
      |     ^~~
books.cpp:15:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   15 |  int tmp = 0, Max = -1;
      |  ^~~
/tmp/ccVLdrzw.o: In function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'
/tmp/ccW8Aq7z.o:books.cpp:(.text.startup+0x0): first defined here
collect2: error: ld returned 1 exit status