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.
```
n, k = map(int, input().split())
a = list(map(int, input().split()))
count = 0
for i in range(n):
if a[i] == k:
count += 1
print(count)
```
giải thích: dòng đầu đọc vào số n và giá trị k, dòng hai đọc vào mảng a. Biến count được khởi tạo bằng 0 để đếm số lần xuất hiện của giá trị k trong mảng a. Vòng lặp for duyệt qua từng phần tử trong mảng a. Nếu phần tử đó bằng k => tăng biến count lên 1. Sau cùng, in ra giá trị của biến count.
Ví dụ:
Input:
```
5 2
1 2 3 2 4
```
Output:
```
2
```
(Giá trị 2 xuất hiện 2 lần trong mảng [1, 2, 3, 2, 4].)
Đề thi tin học trẻ BT phải ko b?
Mà bài này giải sao nhỉ?
Muốn xem code để tham khảo quá!!!
sắp xếp lại các phần tử theo chiều tăng dần rồi đặt kết quả muốn tìm = 1, so sánh nó với từng phần tử trong mảng, nếu bé hơn thì dừng chương trình và đó là kết quả, nếu không thỉ cộng kết quả cho phần tử đang được so sánh.
code :
program giai;uses crt;var n,m,i,c,t : integer;A : array[1..100] of integer;beginclrscr;write('so phan tu cua day so :');readln(m);for i:=1 to m do begin readln(A[i]); end;for i:= 1 to m do for n:=i+1 to m do if A[i] > A[n] then begin c:= A[i]; A[i] := A[n]; A[n] := c; end;t:= 1;for i:=1 to m-1 do if t < A[i] then break else t:= t+ A[i];writeln(t);readln;end.Var a:array[1..100] of integer;
i,n:integer;
s:longint;
Begin
Write('n = ');readln(n);
For i:=1 to n do
Begin
Write('Nhap phan tu thu ',i,' = ');readln(a[i]);
s:=s+a[i];
End;
Write('Cac phan tu vua nhap la ');
For i:=1 to n do
Write(a[i]:8);
Writeln;
Write('Tong cua chung la ',s);
Readln
End.
Bài 1:
Uses crt;
var i,n,j:integer;
a,b,c:array[1..100000] of integer;
Begin
clrscr;
readln(n);
for i:= 1 to n do readln(a[i]);
for i:= 1 to n do readln(b[i]);
j:=0;
for i:= 1 to n do
Begin
inc(j);
c[j] := a[i];
inc(j);
c[j] := b[i];
end;
for i:= 1 to j do write(c[i],' ');
readln;
end.
#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;
}
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
map<ll,ll> mp;
int main()
{
ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
freopen("MAP1.INP","r",stdin);
freopen("MAP1.OUT","w",stdout);
ll n; cin >> n;
ll a[n+5];
for(ll i=1;i<=n;i++) cin >> a[i], mp[a[i]]++;
for(pair<ll,ll> it:mp) cout << it.first << " " << it.second << "\n";
}
Chúc bạn học tốt!
Ý tưởng: Tìm số lớn nhất trong hai dãy đã cho. Không mất tính tổng quát, giả sử số lớn nhất của 2 dãy nằm trong dãy a, ta xét các số trong dãy b, tại vị trí i: nếu a[i] < b[i] thì hoán vị a[i] và b[i]. Sau đó tìm số lớn nhất trong dãy b rồi nhân với số lớn nhất của hai dãy sẽ ra được kết quả.
#include <iostream>
using namespace std;
#define maxN 105
int main() {
int a[maxN], b[maxN];
int t;
cin >> t;
while (t--)
{
int n;
cin >> n;
int maxA = 0, maxB = 0;
for (int i = 0; i < n; i++)
{
cin >> a[i]; maxA = max(a[i], maxA);
}
for (int i = 0; i < n; i++)
{
cin >> b[i]; maxB = max(b[i], maxB);
}
if (maxA < maxB)
swap(a, b);
int maxV = max(maxA, maxB);
for (int i = 0; i < n; i++)
if (b[i] > a[i])
swap(b[i], a[i]);
maxB = 0;
for (int i = 0; i < n; i++)
maxB = max(b[i], maxB);
cout << maxB * maxV << endl;
}
return 0;
}