Submission #231236

#TimeUsernameProblemLanguageResultExecution timeMemory
231236mohamedsobhi777Mountains (IOI17_mountains)C++14
20 / 100
160 ms504 KiB
/* Pure bruteforce */ #include "mountains.h" #include <bits/stdc++.h> using namespace std ; int maximum_deevs(std::vector<int> y) { int ret = 0 ; int n = y.size() ; for(int i = 1 ; i < (1<<n) ; i++){ vector<pair<int , int> > prs ; for(int j = 0 ;j < n ;j++){ if(i &(1<<j)){ prs.push_back({j , y[j]}) ; } } if(prs.size() < ret) continue ; bool okk = 1 ; for(int j = 0 ; j < prs.size() ; j++){ for(int k = j +1 ; k < prs.size() && k < j+2; k++){ bool ok = 0 ; double slp = 1.0 * (prs[j].second - prs[k].second) /( prs[j].first - prs[k].first) ; double o = -1 ; double c = prs[j].second - slp * prs[j].first ; for(int l = prs[j].first +1 ; l < prs[k].first ; l++){ if(l * slp + y[l] * o + c < 0){ ok =1 ; } } if(!ok){ okk = 0 ; j = prs.size() ; break ; } } } if(okk){ ret = max(ret , (int) prs.size()) ; } } return ret; }

Compilation message (stderr)

mountains.cpp: In function 'int maximum_deevs(std::vector<int>)':
mountains.cpp:20:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                 if(prs.size() < ret) continue ; 
                    ~~~~~~~~~~~^~~~~
mountains.cpp:22:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                 for(int j = 0 ; j < prs.size() ; j++){
                                 ~~^~~~~~~~~~~~
mountains.cpp:23:46: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                         for(int k = j +1 ; k < prs.size() && k < j+2; k++){
                                            ~~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...