cho tập M=(K+3/Kthuộc N*)
a tìm 5 phần tử đầu tiên của tập M
b Tìm số thứ 25
c Tính tổng 15 số hạng đầu tiên
Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
a,B={14;17;20;23;26}
b,số đầu 14.suy ra số cuois=(15-1).3+14=56
tổng=(14+56).15:2=525
Đề câu a mình không hiểu cho lắm nha.
b) 1 = 6 x 0 + 1
7 = 6 x 1 + 1
13 = 6 x 2 + 1
19 = 6 x 3 + 1
25 = 6 x 4 + 1
Theo quy luật trên thì ta có thể tìm được phần tử thứ 50 của dãy trên là:
6 x 49 + 1 = 295
a) \(P=\left\{1;6;11;16;21;26;31;36;41;46;...\right\}\)
b) Số hạng thứ 100 của dãy số P :
\(\left(100-1\right).5+1=496\)
c) \(A=1+6+11+...+496\)
\(\Rightarrow A=\left[\left(496-1\right):5+1\right]\left(1+496\right):2\)
\(\Rightarrow A=100.497:2\)
\(\Rightarrow A=24850\)
#include <iostream>
#include <vector>
using namespace std;
vector<int> primeFactors(int n) {
vector<int> factors;
for (int i = 2; i * i <= n; i++) {
while (n % i == 0) {
factors.push_back(i);
n /= i;
}
}
if (n > 1) factors.push_back(n);
return factors;
}
int main() {
int n, k;
cin >> n >> k;
vector<int> a(n);
for (int i = 0; i < n; ++i) {
cin >> a[i];
}
vector<int> factors = primeFactors(k);
int sum = accumulate(a.begin(), a.end(), 0);
vector<vector<bool>> dp(n+1, vector<bool>(sum+1, false));
dp[0][0] = true;
for (int i = 1; i <= n; ++i) {
for (int j = 0; j <= sum; ++j) {
dp[i][j] = dp[i-1][j];
if (j >= a[i-1]) {
for (int factor : factors) {
if (a[i-1] % factor == 0) {
dp[i][j] = dp[i][j] || dp[i-1][j-a[i-1]];
break;
}
}
}
}
}
for (int j = 0; j <= sum; ++j) {
if (dp[n][j]) {
cout << j << endl;
break;
}
}
return 0;
}
a, Quy luật dãy số trên: mỗi chữ số cách nhau 3 đơn vị.
b, A = {2 ; 5 ; 8 ; 11 ; 14 ; 17 ; 20 ; 23 ; 26 ; 29}
c, Dựa theo quy luật tính số hạng ta có:
2 + (20-1) . 3 = 59
⇒ số hạng thứ 20 của dãy là 59
Số 10 không phải là số hạng của dãy số trên.
Vì :
Tổng các số khi cộng cho 3 của dãy số trên không có tổng nào bằng 10 vậy nên 10 không phải số hạng của dãy số trên.
Tổng của 20 số hạng đầu tiên của dãy số là:
(59 + 2) . 20 : 2 = 610