#include <iostream> #include <algorithm> int main() { int a,b,c,n,x; int T[c]; std::cin>>a>>b; x=a*b; std::cin>>c; for (int i=0;i<c;i++){std::cin>>T[i];} std::sort(T,T+c); for (int i=0;i<c;i++) { while(x>=T[c-i-1]*T[c-i-1]){ x=x-T[c-i-1]*T[c-i-1]; n++; }} if(x==0){std::cout<<n;} else{std::cout<<-1;} return 0; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #include <iostream> #include <algorithm> int main() { int a,b,c,n,x; int T[c]; std::cin>>a>>b; x=a*b; std::cin>>c; for (int i=0;i<c;i++){std::cin>>T[i];} std::sort(T,T+c); for (int i=0;i<c;i++) { while(x>=T[c-i-1]*T[c-i-1]){ x=x-T[c-i-1]*T[c-i-1]; n++; }} if(x==0){std::cout<<n;} else{std::cout<<-1;} return 0; } |