二重 for
文の練習! 鉄則本の例題なので解法はメモ程度に。
問題概要
2 つの数列 と が与えられる。
これらから要素を 1 つずつ選び、和が となるようにすることが可能か判定せよ。
メモ
二重の for
文を使おう!
コード
#include <bits/stdc++.h> using namespace std; int main() { int N, K; cin >> N >> K; vector<int> P(N), Q(N); for (int i = 0; i < N; ++i) cin >> P[i]; for (int i = 0; i < N; ++i) cin >> Q[i]; bool res = false; for (int i = 0; i < N; ++i) { for (int j = 0; j < N; ++j) { if (P[i] + Q[j] == K) { res = true; } } } if (res) cout << "Yes" << endl; else cout << "No" << endl; }