Submission #289066

#TimeUsernameProblemLanguageResultExecution timeMemory
289066JoMeeAncient Books (IOI17_books)C++17
50 / 100
196 ms22776 KiB
#include "books.h" #include <bits/stdc++.h> using namespace std; #define rep(i,a,n) for(int i = a; i<n; i++) #define per(i,a,n) for(int i = n-1; i>=a; i--) long long minimum_walk(vector<int> p, int s) { vector<long long> sm(p.size(),0); rep(i,0,p.size()){ if(i < p[i])sm[i]++,sm[p[i]]--; } rep(i,1,sm.size())sm[i] += sm[i-1]; int rm = -1; per(i,0,p.size()){ if(sm[i] != 0){ rm = i; break; } } if(rm == -1)return 0; long long res = 0; rep(i,0,rm){ if(sm[i] != 0)res+=2*(sm[i]-1); } res += 2*(rm+1); return res; }

Compilation message (stderr)

books.cpp: In function 'long long int minimum_walk(std::vector<int>, int)':
books.cpp:6:36: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    6 | #define rep(i,a,n) for(int i = a; i<n; i++)
......
   13 |  rep(i,0,p.size()){
      |      ~~~~~~~~~~~~                   
books.cpp:13:2: note: in expansion of macro 'rep'
   13 |  rep(i,0,p.size()){
      |  ^~~
books.cpp:6:36: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    6 | #define rep(i,a,n) for(int i = a; i<n; i++)
......
   16 |  rep(i,1,sm.size())sm[i] += sm[i-1];
      |      ~~~~~~~~~~~~~                  
books.cpp:16:2: note: in expansion of macro 'rep'
   16 |  rep(i,1,sm.size())sm[i] += sm[i-1];
      |  ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...