제출 #231241

#제출 시각아이디문제언어결과실행 시간메모리
231241mohamedsobhi777Mountains (IOI17_mountains)C++14
20 / 100
169 ms384 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() ; bool gd[n+1][n+1] ; memset(gd , 0 , sizeof gd) ; for(int i = 0 ; i < n ;i++){ for(int j = i+1 ; j< n;j++){ for(int k = i+1 ; k < j ;k++){ double slp = 1.0 * (y[i] - y[j]) /( i - j) ; double o = -1 ; double c = y[i] - slp * i ; if(k * slp + y[k] * o + c < 0){ gd[i][j] = gd[j][i] = 1; } else gd[i][j] = gd[j][i] = 0 ; } } } 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 = gd[prs[j].first][prs[k].first] ; if(!ok){ okk = 0 ; j = prs.size() ; break ; } } } if(okk){ ret = max(ret , (int) prs.size()) ; } } return ret; }

컴파일 시 표준 에러 (stderr) 메시지

mountains.cpp: In function 'int maximum_deevs(std::vector<int>)':
mountains.cpp:38:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                 if(prs.size() < ret) continue ; 
                    ~~~~~~~~~~~^~~~~
mountains.cpp:40:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                 for(int j = 0 ; j < prs.size() ; j++){
                                 ~~^~~~~~~~~~~~
mountains.cpp:41: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...