#1194
Fence
Un proprietar vinde un teren de formă dreptunghiulară împărțit în MxN
parcele de formă pătrată cu lungimea laturii de o unitate. Fiecare parcelă costă V
lei. Vlad s-a interesat și a aflat pentru fiecare din parcelele terenului care este valoarea de revânzare. El constată că unele parcele i-ar putea aduce profit, iar altele i-ar aduce pierdere. Fiind isteț, negociază cu proprietarul să cumpere atâtea parcele de teren câte pot fi împrejmuite cu un singur gard de lungime egală cu 2M+2N
unități. Terenul are pe fiecare din cele patru laturi acces la drumul exterior, pe o porțiune de lungime egală cu o unitate. Vlad negociază astfel încât terenul achiziționat să conțină și cele patru parcele de acces la exterior.
Cunoscând M
și N
– dimensiunile terenului, V
– prețul de cumpărare al fiecărei parcele, x_nord
, x_sud
, y_vest
și y_est
– pozițiile parcelelor cu acces la drumul exterior și A[i][j]
, 1≤i≤M
și 1≤j≤N
– valorile de revânzare pentru fiecare parcelă, să se determine:
a) Profitul P_arie_minimă
pe care-l poate obține Vlad după cumpărarea și apoi revânzarea suprafeței de teren de arie minimă, împrejmuită conform condițiilor negociate.
b) Profitul maxim P_max
pe care-l poate obține Vlad după cumpărarea și apoi revânzarea unei suprafețe de teren împrejmuită conform condițiilor negociate.
Problema | Fence | Operații I/O |
![]() fence.in /fence.out
|
---|---|---|---|
Limita timp | 0.3 secunde | Limita memorie |
Total: 32 MB
/
Stivă 8 MB
|
Id soluție | #56495513 | Utilizator | |
Fișier | fence.cpp | Dimensiune | 3.21 KB |
Data încărcării | 22 Februarie 2025, 09:16 | Scor / rezultat | Eroare de compilare |
fence.cpp:11:30: error: 'int y1' redeclared as different kind of symbol int cerinta, n, m, x, y, x1, y1, mat[1005][1005], viz[1005][1005], V, dp[1005][1005], mx[1005][1005]; ^ In file included from /usr/include/features.h:374:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/os_defines.h:39, from /usr/include/i386-linux-gnu/c++/4.8/bits/c++config.h:426, from /usr/include/c++/4.8/iostream:38, from fence.cpp:1: /usr/include/i386-linux-gnu/bits/mathcalls.h:241:1: error: previous declaration of 'double y1(double)' __MATHCALL (y1,, (_Mdouble_)); ^ fence.cpp: In function 'int main()': fence.cpp:18:44: error: cannot bind 'std::basic_istream<char>::__istream_type {aka std::basic_istream<char>}' lvalue to 'std::basic_istream<char>&&' f >> cerinta >> n >> m >> V >> x >> x1 >> y >> y1; ^ In file included from /usr/include/c++/4.8/iostream:40:0, from fence.cpp:1: /usr/include/c++/4.8/istream:872:5: error: initializing argument 1 of 'std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&&, _Tp&) [with _CharT = char; _Traits = std::char_traits<char>; _Tp = double(double)throw ()]' operator>>(basic_istream<_CharT, _Traits>&& __is, _Tp& __x) ^ fence.cpp:28:24: error: no matching function for call to 'max(int&, double (&)(double)throw ())' for (;i<=max (y, y1);i+=dx[2]) ^ fence.cpp:28:24: note: candidates are: In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from fence.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:216:5: note: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&) max(const _Tp& __a, const _Tp& __b) ^ /usr/include/c++/4.8/bits/stl_algobase.h:216:5: note: template argument deduction/substitution failed: fence.cpp:28:24: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'double(double)throw ()') for (;i<=max (y, y1);i+=dx[2]) ^ In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from fence.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:260:5: note: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare) max(const _Tp& __a, const _Tp& __b, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algobase.h:260:5: note: template argument deduction/substitution failed: fence.cpp:28:24: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'double(double)throw ()') for (;i<=max (y, y1);i+=dx[2]) ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from fence.cpp:4: /usr/include/c++/4.8/bits/stl_algo.h:4231:5: note: template<class _Tp> _Tp std::max(std::initializer_list<_Tp>) max(initializer_list<_Tp> __l) ^ /usr/include/c++/4.8/bits/stl_algo.h:4231:5: note: template argument deduction/substitution failed: fence.cpp:28:24: note: mismatched types 'std::initializer_list<_Tp>' and 'int' for (;i<=max (y, y1);i+=dx[2]) ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from fence.cpp:4: /usr/include/c++/4.8/bits/stl_algo.h:4236:5: note: template<class _Tp, class _Compare> _Tp std::max(std::initializer_list<_Tp>, _Compare) max(initializer_list<_Tp> __l, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algo.h:4236:5: note: template argument deduction/substitution failed: fence.cpp:28:24: note: mismatched types 'std::initializer_list<_Tp>' and 'int' for (;i<=max (y, y1);i+=dx[2]) ^ fence.cpp:32:6: error: invalid conversion from 'double (*)(double)throw ()' to 'int' [-fpermissive] i=y1, j=m; ^ fence.cpp:38:24: error: no matching function for call to 'min(int&, double (&)(double)throw ())' for (;i>=min (y, y1);i+=dx[0]) ^ fence.cpp:38:24: note: candidates are: In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from fence.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:193:5: note: template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&) min(const _Tp& __a, const _Tp& __b) ^ /usr/include/c++/4.8/bits/stl_algobase.h:193:5: note: template argument deduction/substitution failed: fence.cpp:38:24: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'double(double)throw ()') for (;i>=min (y, y1);i+=dx[0]) ^ In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from fence.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:239:5: note: template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare) min(const _Tp& __a, const _Tp& __b, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algobase.h:239:5: note: template argument deduction/substitution failed: fence.cpp:38:24: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'double(double)throw ()') for (;i>=min (y, y1);i+=dx[0]) ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from fence.cpp:4: /usr/include/c++/4.8/bits/stl_algo.h:4221:5: note: template<class _Tp> _Tp std::min(std::initializer_list<_Tp>) min(initializer_list<_Tp> __l) ^ /usr/include/c++/4.8/bits/stl_algo.h:4221:5: note: template argument deduction/substitution failed: fence.cpp:38:24: note: mismatched types 'std::initializer_list<_Tp>' and 'int' for (;i>=min (y, y1);i+=dx[0]) ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from fence.cpp:4: /usr/include/c++/4.8/bits/stl_algo.h:4226:5: note: template<class _Tp, class _Compare> _Tp std::min(std::initializer_list<_Tp>, _Compare) min(initializer_list<_Tp> __l, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algo.h:4226:5: note: template argument deduction/substitution failed: fence.cpp:38:24: note: mismatched types 'std::initializer_list<_Tp>' and 'int' for (;i>=min (y, y1);i+=dx[0]) ^ fence.cpp:47:26: error: no matching function for call to 'min(int&, double (&)(double)throw ())' for (int i=min (y, y1);i<=max (y, y1);i++) ^ fence.cpp:47:26: note: candidates are: In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from fence.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:193:5: note: template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&) min(const _Tp& __a, const _Tp& __b) ^ /usr/include/c++/4.8/bits/stl_algobase.h:193:5: note: template argument deduction/substitution failed: fence.cpp:47:26: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'double(double)throw ()') for (int i=min (y, y1);i<=max (y, y1);i++) ^ In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from fence.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:239:5: note: template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare) min(const _Tp& __a, const _Tp& __b, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algobase.h:239:5: note: template argument deduction/substitution failed: fence.cpp:47:26: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'double(double)throw ()') for (int i=min (y, y1);i<=max (y, y1);i++) ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from fence.cpp:4: /usr/include/c++/4.8/bits/stl_algo.h:4221:5: note: template<class _Tp> _Tp std::min(std::initializer_list<_Tp>) min(initializer_list<_Tp> __l) ^ /usr/include/c++/4.8/bits/stl_algo.h:4221:5: note: template argument deduction/substitution failed: fence.cpp:47:26: note: mismatched types 'std::initializer_list<_Tp>' and 'int' for (int i=min (y, y1);i<=max (y, y1);i++) ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from fence.cpp:4: /usr/include/c++/4.8/bits/stl_algo.h:4226:5: note: template<class _Tp, class _Compare> _Tp std::min(std::initializer_list<_Tp>, _Compare) min(initializer_list<_Tp> __l, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algo.h:4226:5: note: template argument deduction/substitution failed: fence.cpp:47:26: note: mismatched types 'std::initializer_list<_Tp>' and 'int' for (int i=min (y, y1);i<=max (y, y1);i++) ^ fence.cpp:47:41: error: no matching function for call to 'max(int&, double (&)(double)throw ())' for (int i=min (y, y1);i<=max (y, y1);i++) ^ fence.cpp:47:41: note: candidates are: In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from fence.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:216:5: note: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&) max(const _Tp& __a, const _Tp& __b) ^ /usr/include/c++/4.8/bits/stl_algobase.h:216:5: note: template argument deduction/substitution failed: fence.cpp:47:41: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'double(double)throw ()') for (int i=min (y, y1);i<=max (y, y1);i++) ^ In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from fence.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:260:5: note: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare) max(const _Tp& __a, const _Tp& __b, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algobase.h:260:5: note: template argument deduction/substitution failed: fence.cpp:47:41: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'double(double)throw ()') for (int i=min (y, y1);i<=max (y, y1);i++) ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from fence.cpp:4: /usr/include/c++/4.8/bits/stl_algo.h:4231:5: note: template<class _Tp> _Tp std::max(std::initializer_list<_Tp>) max(initializer_list<_Tp> __l) ^ /usr/include/c++/4.8/bits/stl_algo.h:4231:5: note: template argument deduction/substitution failed: fence.cpp:47:41: note: mismatched types 'std::initializer_list<_Tp>' and 'int' for (int i=min (y, y1);i<=max (y, y1);i++) ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from fence.cpp:4: /usr/include/c++/4.8/bits/stl_algo.h:4236:5: note: template<class _Tp, class _Compare> _Tp std::max(std::initializer_list<_Tp>, _Compare) max(initializer_list<_Tp> __l, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algo.h:4236:5: note: template argument deduction/substitution failed: fence.cpp:47:41: note: mismatched types 'std::initializer_list<_Tp>' and 'int' for (int i=min (y, y1);i<=max (y, y1);i++) ^ fence.cpp:95:11: warning: pointer to a function used in arithmetic [-Wpointer-arith] xs=y1-1, ys=x+1, mxx=-1e9; ^ fence.cpp:95:10: error: invalid conversion from 'double (*)(double)throw ()' to 'int' [-fpermissive] xs=y1-1, ys=x+1, mxx=-1e9; ^ fence.cpp:129:11: warning: pointer to a function used in arithmetic [-Wpointer-arith] xs=y1+1, ys=x1+1, mxx=-1e9; ^ fence.cpp:129:10: error: invalid conversion from 'double (*)(double)throw ()' to 'int' [-fpermissive] xs=y1+1, ys=x1+1, mxx=-1e9; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Fence face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.