困っていること
https://atcoder.jp/contests/abc071/tasks/arc081_a
こちらの問題で、サンプル3つはACされるのですがその他がほとんど弾かれてしまいます。色々なサンプルを試してデバッグしたつもりなのですが、なぜWAになってしまうのでしょうか。言語はC++です。
初心者のためご教授よろしくお願いします。
コード
C++
1#include <bits/stdc++.h> 2using namespace std; 3int main(){ 4 int n; 5 cin >> n; 6 vector<int> temp(n); 7 vector<pair<int,int>> vec(0); 8 for(int i=0;i<n;i++){ 9 cin >> temp[i]; 10 } 11 sort(temp.begin(),temp.end(),greater<int>()); 12 /*for(int i=0;i<n;i++){ 13 cout << temp[i] << ' '; 14 } 15 cout << endl;*/ 16 vec.push_back(make_pair(temp[0],1)); 17 for(int i=1;i<n;i++){ 18 if(temp[i]==temp[i-1]){ 19 vec[vec.size()-1].second++; 20 //cout << i << ',' << temp[i] << endl; 21 } 22 else{ 23 vec.push_back(make_pair(temp[i],1)); 24 } 25 } 26 /*for(int i=0;i<vec.size();i++){ 27 cout << vec[i].first << ',' << vec[i].second << endl; 28 }*/ 29 int maxi=-1,sec=-1; 30 for(int i=0;i<vec.size();i++){ 31 if(vec[i].second>=2){ 32 maxi=i; 33 vec[i].second-=2; 34 break; 35 } 36 } 37 for(int i=maxi;i<vec.size();i++){ 38 if(vec[i].second>=2){ 39 sec=i; 40 break; 41 } 42 } 43 if(maxi!=-1&&sec!=-1){ 44 cout << vec[maxi].first*vec[sec].first << endl; 45 } 46 else{ 47 cout << 0 << endl; 48 } 49}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/05/24 20:13