回复 10楼 wxjeacen
你骂他什么了 我感觉题目挺难的人家收 200块钱的手工费是应当的
天下皆醒,唯我独醉; 天下皆白,唯我独黑
#include <iostream> #include <vector> #include <algorithm> using namespace std; int main(int argc,char *argv[]) { int n; vector<int> vec; while(cin>>n){ if( -1 == n) break; else { if( 0 == n ) { sort(vec.begin(),vec.end()); int count=0; for(vector<int>::iterator ix=vec.begin();ix!=vec.end();ix++) { for(vector<int>::iterator jx=ix;jx!=vec.end();jx++) { int m=2*(*ix); if( m == *jx ) count++; } } cout<<count<<endl; vec.erase(vec.begin(),vec.end()); } else vec.push_back(n); } } return 0; }
#include <iostream> #include <vector> #include <algorithm> using namespace std; int main(int argc,char *argv[]) { int s,k=0; vector<int> vec; cin>>s; while(k<s){ cout<<"Scenario #"<<++k<<endl; int m,n,tmp,sum=0; cin>>m>>n; for( int i=0; i < n;i++) { cin>>tmp; vec.push_back(tmp); } sort(vec.begin(),vec.end()); int count=0; while(sum<m && !vec.empty()) { sum+=vec.back(); vec.pop_back(); count++; } if(vec.empty()&&sum<m ) { cout<<"impossible"<<endl; } else { cout<<count<<endl; } } return 0; }