#4586
În teoria grafurilor, un graf planar este un graf care poate fi încorporat într-un plan, adică poate fi desenat în plan în așa fel încât muchiile sale să se intersecteze doar în noduri. Cu alte cuvinte, aceste poate fi desenat în așa fel încât oricare două muchii să nu se intersecteze. Florin urmează în perioada 2023-2029 studii în informatică.
Fiind date NR = 2 * N
noduri fixe (asemănător cu ceasul clasic) în planul xOy și N
muchii, Florin vrea să determine numărul grafurilor distincte planare în care fiecare nod va avea gradul 1
. Scrieţi un program care să determine numărul de grafuri obținute de Florin.
OMI Iasi 2024
Problema | planar | Operații I/O |
![]() planar.in /planar.out
|
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 128 MB
/
Stivă 8 MB
|
Id soluție | #56047406 | Utilizator | |
Fișier | planar.cpp | Dimensiune | 1.77 KB |
Data încărcării | 04 Februarie 2025, 10:07 | Scor / rezultat | Eroare de compilare |
planar.cpp: In function 'long long int numberOfPlanarGraphs(int, long long int)': planar.cpp:18:63: error: no matching function for call to 'pow(int, int&, long long int&)' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ planar.cpp:18:63: note: candidates are: In file included from /usr/include/features.h:374:0, from /usr/include/assert.h:35, from /usr/include/c++/4.8/cassert:43, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:33, from planar.cpp:1: /usr/include/i386-linux-gnu/bits/mathcalls.h:153:1: note: double pow(double, double) __MATHCALL (pow,, (_Mdouble_ __x, _Mdouble_ __y)); ^ /usr/include/i386-linux-gnu/bits/mathcalls.h:153:1: note: candidate expects 2 arguments, 3 provided In file included from /usr/include/c++/4.8/valarray:587:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94, from planar.cpp:1: /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template<class _Tp> std::_Expr<std::_BinClos<std::_Pow, std::_Constant, std::_ValArray, _Tp, _Tp>, _Tp> std::pow(const _Tp&, const std::valarray<_Tp>&) _DEFINE_EXPR_BINARY_FUNCTION(pow, _Pow) ^ /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::valarray<_Tp>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/valarray:587:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94, from planar.cpp:1: /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template<class _Tp> std::_Expr<std::_BinClos<std::_Pow, std::_ValArray, std::_Constant, _Tp, _Tp>, _Tp> std::pow(const std::valarray<_Tp>&, const _Tp&) _DEFINE_EXPR_BINARY_FUNCTION(pow, _Pow) ^ /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::valarray<_Tp>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/valarray:587:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94, from planar.cpp:1: /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template<class _Tp> std::_Expr<std::_BinClos<std::_Pow, std::_ValArray, std::_ValArray, _Tp, _Tp>, _Tp> std::pow(const std::valarray<_Tp>&, const std::valarray<_Tp>&) _DEFINE_EXPR_BINARY_FUNCTION(pow, _Pow) ^ /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::valarray<_Tp>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/valarray:587:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94, from planar.cpp:1: /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template<class _Dom> std::_Expr<std::_BinClos<std::_Pow, std::_Constant, std::_Expr, typename _Dom::value_type, _Dom>, typename _Dom::value_type> std::pow(const typename _Dom::value_type&, const std::_Expr<_Dom1, typename _Dom1::value_type>&) _DEFINE_EXPR_BINARY_FUNCTION(pow, _Pow) ^ /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::_Expr<_Dom1, typename _Dom1::value_type>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/valarray:587:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94, from planar.cpp:1: /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template<class _Dom> std::_Expr<std::_BinClos<std::_Pow, std::_Expr, std::_Constant, _Dom, typename _Dom::value_type>, typename _Dom::value_type> std::pow(const std::_Expr<_Dom1, typename _Dom1::value_type>&, const typename _Dom::value_type&) _DEFINE_EXPR_BINARY_FUNCTION(pow, _Pow) ^ /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::_Expr<_Dom1, typename _Dom1::value_type>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/valarray:587:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94, from planar.cpp:1: /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template<class _Dom> std::_Expr<std::_BinClos<std::_Pow, std::_ValArray, std::_Expr, typename _Dom::value_type, _Dom>, typename _Dom::value_type> std::pow(const std::valarray<typename _Dom::valarray>&, const std::_Expr<_Dom1, typename _Dom1::value_type>&) _DEFINE_EXPR_BINARY_FUNCTION(pow, _Pow) ^ /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::valarray<typename _Dom::valarray>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/valarray:587:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94, from planar.cpp:1: /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template<class _Dom> std::_Expr<std::_BinClos<std::_Pow, std::_Expr, std::_ValArray, _Dom, typename _Dom::value_type>, typename _Dom::value_type> std::pow(const std::_Expr<_Dom1, typename _Dom1::value_type>&, const std::valarray<typename _Dom::value_type>&) _DEFINE_EXPR_BINARY_FUNCTION(pow, _Pow) ^ /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::_Expr<_Dom1, typename _Dom1::value_type>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/valarray:587:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94, from planar.cpp:1: /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template<class _Dom1, class _Dom2> std::_Expr<std::_BinClos<std::_Pow, std::_Expr, std::_Expr, _Dom1, _Dom2>, typename _Dom1::value_type> std::pow(const std::_Expr<_Dom1, typename _Dom1::value_type>&, const std::_Expr<_Dom2, typename _Dom2::value_type>&) _DEFINE_EXPR_BINARY_FUNCTION(pow, _Pow) ^ /usr/include/c++/4.8/bits/valarray_after.h:544:1: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::_Expr<_Dom1, typename _Dom1::value_type>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/ccomplex:38:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from planar.cpp:1: /usr/include/c++/4.8/complex:1871:5: note: template<class _Tp, class _Up> std::complex<typename __gnu_cxx::__promote_2<_Tp, _Up>::__type> std::pow(const std::complex<_Tp>&, const std::complex<_Up>&) pow(const std::complex<_Tp>& __x, const std::complex<_Up>& __y) ^ /usr/include/c++/4.8/complex:1871:5: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::complex<_Tp>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/ccomplex:38:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from planar.cpp:1: /usr/include/c++/4.8/complex:1863:5: note: template<class _Tp, class _Up> std::complex<typename __gnu_cxx::__promote_2<_Tp, _Up>::__type> std::pow(const _Tp&, const std::complex<_Up>&) pow(const _Tp& __x, const std::complex<_Up>& __y) ^ /usr/include/c++/4.8/complex:1863:5: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::complex<_Up>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/ccomplex:38:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from planar.cpp:1: /usr/include/c++/4.8/complex:1855:5: note: template<class _Tp, class _Up> std::complex<typename __gnu_cxx::__promote_2<_Tp, _Up>::__type> std::pow(const std::complex<_Tp>&, const _Up&) pow(const std::complex<_Tp>& __x, const _Up& __y) ^ /usr/include/c++/4.8/complex:1855:5: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::complex<_Tp>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/ccomplex:38:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from planar.cpp:1: /usr/include/c++/4.8/complex:1034:5: note: template<class _Tp> std::complex<_Tp> std::pow(const _Tp&, const std::complex<_Tp>&) pow(const _Tp& __x, const complex<_Tp>& __y) ^ /usr/include/c++/4.8/complex:1034:5: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::complex<_Tp>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/ccomplex:38:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from planar.cpp:1: /usr/include/c++/4.8/complex:1023:5: note: template<class _Tp> std::complex<_Tp> std::pow(const std::complex<_Tp>&, const std::complex<_Tp>&) pow(const complex<_Tp>& __x, const complex<_Tp>& __y) ^ /usr/include/c++/4.8/complex:1023:5: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::complex<_Tp>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/c++/4.8/ccomplex:38:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from planar.cpp:1: /usr/include/c++/4.8/complex:989:5: note: template<class _Tp> std::complex<_Tp> std::pow(const std::complex<_Tp>&, const _Tp&) pow(const complex<_Tp>& __x, const _Tp& __y) ^ /usr/include/c++/4.8/complex:989:5: note: template argument deduction/substitution failed: planar.cpp:18:63: note: mismatched types 'const std::complex<_Tp>' and 'int' long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:41:0, from planar.cpp:1: /usr/include/c++/4.8/cmath:434:5: note: template<class _Tp, class _Up> constexpr typename __gnu_cxx::__promote_2<_Tp, _Up>::__type std::pow(_Tp, _Up) pow(_Tp __x, _Up __y) ^ /usr/include/c++/4.8/cmath:434:5: note: template argument deduction/substitution failed: planar.cpp:18:63: note: candidate expects 2 arguments, 3 provided long long denominator = (factorial(N, mod) * pow(2, N, mod)) % mod; ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:41:0, from planar.cpp:1: /usr/include/c++/4.8/cmath:411:3: note: constexpr long double std::pow(long double, long double) pow(long double __x, long double __y) ^ /usr/include/c++/4.8/cmath:411:3: note: candidate expects 2 arguments, 3 provided /usr/include/c++/4.8/cmath:407:3: note: constexpr float std::pow(float, float) pow(float __x, float __y) ^ /usr/include/c++/4.8/cmath:407:3: note: candidate expects 2 arguments, 3 provided
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema planar 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ă.