[Mảng 1 Chiều Cơ Bản]. Bài 58. Cặp đôi xa cách
Xem dạng PDF
Gửi bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Nguồn bài:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Cho mảng A[] gồm N phần tử bạn hãy tìm 2 số A[i] và A[j] trong mảng với A[i] = A[j] và i < j sao cho j - i đạt giá trị lớn nhất.
Ví dụ : A = [1, 2, 3, 1, 1, 5] thì cặp i = 0 và j = 4 là kết quả tốt nhất.
Bạn hãy tìm giá trị lớn nhất của j - i, nếu trong mảng không tồn tại cặp A[i] và A[j] (i < j) bằng nhau thì bạn hãy in ra 28tech.
Đầu vào
Dòng 1 là N : số phần tử trong mảng
Dòng 2 là N số viết cách nhau 1 dấu cách
Giới hạn
1≤N≤10^3
0≤A[i] ≤10^6
Đầu ra
In ra đáp án của bài toán
Ví dụ :
Input 01
6
1 2 3 1 1 5
Output 01
4
Input 02
5
1 2 3 4 5
Output 02
28tech
Bình luận
include<bits/stdc++.h>
using namespace std;
define ll long long
ll b[1123456],d1,d2,s1,s2,n,maxx=LLONGMIN,minn=LLONGMAX,minn2=LLONGMAX,x,k,m,sct; ll cnt[1123456]; ll a[1123456]; int main() { iosbase::syncwithstdio(false); cin.tie(nullptr); cin>>n; for(ll i=0; i<n; i++) { cin>>a[i]; } d1=1; for(ll i=0; i<n; i++) { for(ll j=i+1; j<n; j++) { if(a[i]==a[j]&&j-i>maxx) { d1=0; maxx=j-i; } } } if(d1==1) cout<<"28tech"; if(d1==0) cout<<maxx; return 0; } code don gian de hieu cho anh em
include <bits/stdc++.h>
using namespace std; int a[1000005]; int main(){
}
if (!ok){ cout<<"28tech"; return 0; } cout<<ans;
include <bits/stdc++.h>
using namespace std; using ll = long long; using ull = unsigned long long;
int main() { ios::syncwithstdio(false); cin.tie(nullptr); int n;cin >> n; int a[n]; for(int &i : a) cin >> i; int max=0; for(int i = 0; i < n; i++){ for(int j = i+1; j < n;j++){ if(a[i]==a[j]){ if(max<(j-i)) max=(j-i); } } } if(max==0)cout << "28tech"; else cout << max_; return 0; }
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.