답안 #238945

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
238945 2020-06-13T17:00:59 Z dolphingarlic Balloons (CEOI11_bal) C++14
컴파일 오류
0 ms 0 KB
#include <bits/stdc++.h>
main(){int n;std::stack<std::pair<float,float>>s;scanf("%d",&n);while(n--){float x,r;scanf("%f %f",&x,&r);while(s.size()){r=std::min(r,pow(x-s.top().first,2)/s.top().second/4);if(r>s.top().second)s.pop();else break;}s.push({x,r});printf("%f\n",r);}}

Compilation message

bal.cpp:2:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
 main(){int n;std::stack<std::pair<float,float>>s;scanf("%d",&n);while(n--){float x,r;scanf("%f %f",&x,&r);while(s.size()){r=std::min(r,pow(x-s.top().first,2)/s.top().second/4);if(r>s.top().second)s.pop();else break;}s.push({x,r});printf("%f\n",r);}}
      ^
bal.cpp: In function 'int main()':
bal.cpp:2:175: error: no matching function for call to 'min(float&, double)'
 main(){int n;std::stack<std::pair<float,float>>s;scanf("%d",&n);while(n--){float x,r;scanf("%f %f",&x,&r);while(s.size()){r=std::min(r,pow(x-s.top().first,2)/s.top().second/4);if(r>s.top().second)s.pop();else break;}s.push({x,r});printf("%f\n",r);}}
                                                                                                                                                                               ^
In file included from /usr/include/c++/7/bits/char_traits.h:39:0,
                 from /usr/include/c++/7/ios:40,
                 from /usr/include/c++/7/istream:38,
                 from /usr/include/c++/7/sstream:38,
                 from /usr/include/c++/7/complex:45,
                 from /usr/include/c++/7/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52,
                 from bal.cpp:1:
/usr/include/c++/7/bits/stl_algobase.h:195:5: note: candidate: template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)
     min(const _Tp& __a, const _Tp& __b)
     ^~~
/usr/include/c++/7/bits/stl_algobase.h:195:5: note:   template argument deduction/substitution failed:
bal.cpp:2:175: note:   deduced conflicting types for parameter 'const _Tp' ('float' and 'double')
 main(){int n;std::stack<std::pair<float,float>>s;scanf("%d",&n);while(n--){float x,r;scanf("%f %f",&x,&r);while(s.size()){r=std::min(r,pow(x-s.top().first,2)/s.top().second/4);if(r>s.top().second)s.pop();else break;}s.push({x,r});printf("%f\n",r);}}
                                                                                                                                                                               ^
In file included from /usr/include/c++/7/bits/char_traits.h:39:0,
                 from /usr/include/c++/7/ios:40,
                 from /usr/include/c++/7/istream:38,
                 from /usr/include/c++/7/sstream:38,
                 from /usr/include/c++/7/complex:45,
                 from /usr/include/c++/7/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52,
                 from bal.cpp:1:
/usr/include/c++/7/bits/stl_algobase.h:243:5: note: candidate: template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)
     min(const _Tp& __a, const _Tp& __b, _Compare __comp)
     ^~~
/usr/include/c++/7/bits/stl_algobase.h:243:5: note:   template argument deduction/substitution failed:
bal.cpp:2:175: note:   deduced conflicting types for parameter 'const _Tp' ('float' and 'double')
 main(){int n;std::stack<std::pair<float,float>>s;scanf("%d",&n);while(n--){float x,r;scanf("%f %f",&x,&r);while(s.size()){r=std::min(r,pow(x-s.top().first,2)/s.top().second/4);if(r>s.top().second)s.pop();else break;}s.push({x,r});printf("%f\n",r);}}
                                                                                                                                                                               ^
In file included from /usr/include/c++/7/algorithm:62:0,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:65,
                 from bal.cpp:1:
/usr/include/c++/7/bits/stl_algo.h:3450:5: note: candidate: template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)
     min(initializer_list<_Tp> __l)
     ^~~
/usr/include/c++/7/bits/stl_algo.h:3450:5: note:   template argument deduction/substitution failed:
bal.cpp:2:175: note:   mismatched types 'std::initializer_list<_Tp>' and 'float'
 main(){int n;std::stack<std::pair<float,float>>s;scanf("%d",&n);while(n--){float x,r;scanf("%f %f",&x,&r);while(s.size()){r=std::min(r,pow(x-s.top().first,2)/s.top().second/4);if(r>s.top().second)s.pop();else break;}s.push({x,r});printf("%f\n",r);}}
                                                                                                                                                                               ^
In file included from /usr/include/c++/7/algorithm:62:0,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:65,
                 from bal.cpp:1:
/usr/include/c++/7/bits/stl_algo.h:3456:5: note: candidate: template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)
     min(initializer_list<_Tp> __l, _Compare __comp)
     ^~~
/usr/include/c++/7/bits/stl_algo.h:3456:5: note:   template argument deduction/substitution failed:
bal.cpp:2:175: note:   mismatched types 'std::initializer_list<_Tp>' and 'float'
 main(){int n;std::stack<std::pair<float,float>>s;scanf("%d",&n);while(n--){float x,r;scanf("%f %f",&x,&r);while(s.size()){r=std::min(r,pow(x-s.top().first,2)/s.top().second/4);if(r>s.top().second)s.pop();else break;}s.push({x,r});printf("%f\n",r);}}
                                                                                                                                                                               ^
bal.cpp:2:55: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
 main(){int n;std::stack<std::pair<float,float>>s;scanf("%d",&n);while(n--){float x,r;scanf("%f %f",&x,&r);while(s.size()){r=std::min(r,pow(x-s.top().first,2)/s.top().second/4);if(r>s.top().second)s.pop();else break;}s.push({x,r});printf("%f\n",r);}}
                                                  ~~~~~^~~~~~~~~
bal.cpp:2:91: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
 main(){int n;std::stack<std::pair<float,float>>s;scanf("%d",&n);while(n--){float x,r;scanf("%f %f",&x,&r);while(s.size()){r=std::min(r,pow(x-s.top().first,2)/s.top().second/4);if(r>s.top().second)s.pop();else break;}s.push({x,r});printf("%f\n",r);}}
                                                                                      ~~~~~^~~~~~~~~~~~~~~