AtCoder Beginner Contest 143 問題D 10/25 金
AtCoder Beginner Contest 143 問題D 10/25 金
2019/10/19(土)に実施されたコンテストに参加してみました。
それぞれの問題について、考察してみます。
問題D ダメ
#include <bits/stdc++.h>
using namespace std;
int main() {
long ct;
ct = 0;
int N;
cin >> N;
vector <int> L(N);
for (int i=0; i<N; i++) {
cin >> L.at(i);
}
int a,b,c;
for (int i=0; i<N-2; i++) {
for (int j=i+1; j<N-1; j++) {
for (int k=j+1; k<N; k++) {
a = L.at(i);
b = L.at(j);
c = L.at(k);
if (a < b+c) {
if (b < a+c) {
if (c < a+b) {
ct = ct + 1;
} } } } } }
cout << ct << endl;
}
問題D よかった
#include <bits/stdc++.h>
using namespace std;
int main() {
long ct;
ct = 0;
int N;
cin >> N;
vector <int> L(N);
for (int i=0; i<N; i++) {
cin >> L.at(i);
}
sort(L.begin(), L.end());
for (int i=0; i<N-2; i++) {
for (int j=i+1; j<N-1; j++) {
for (int k=j+1; k<N; k++) {
if (L.at(i) + L.at(j) > L.at(k)){
ct ++;
} } } }
cout << ct << endl;
}