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
Tác giả:
Nguồn bài:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Cho mảng A[] gồm N kí tự chỉ bao gồm chữ cái in thường và chữ số, 28tech cho phép bạn nhặt các chữ cái ở chỉ số chẵn và xếp thành từ 28tech nhưng không được thay đổi thứ tự xuất hiện các kí tự trong mảng A[]. Ví dụ mảng A[] = {2, t, e, a, 8, d, t, c, e, d, c, x, h, h} có thể nhặt ra các chữ cái ở chỉ số 0, 4, 6, 8, 10, 12 để tạo thành từ 28tech.
Đầu vào
• Dòng 1 là : số lượng phần tử trong mảng
• Dòng 2 là N số trong mảng cách nhau 1 dấu cách
Giới hạn
• 1<=N<=10000
• Các phần tử trong mảng A[] là chữ cái in thường hoặc chữ số
Đầu ra
In ra 28TECH nếu bạn có thể tập hợp các chữ cái trong mảng A[] để tạo thành từ 28Tech, ngược lại in ra HCET82.
Ví dụ :
Input 01
25
n 2 a w 1 a j c t n 1 i i 2 i j 3 e 8 e l i a 2 w
Output 01
HCET82
Input 02
12
2 x 8 x t x e x c y h y
Output 02
28TECH
Bình luận
Ai muốn tham khảo code thì vô github: perk bevis nha
include <bits/stdc++.h>
using namespace std;
int main() { int n; cin >> n; vector<char> A(n); for(int i = 0; i < n; i++) { cin >> A[i]; } string tmp = "28tech"; int len = tmp.length(); int j = 0; for(int i = 0; i < n; i += 2) { if(A[i] == tmp[j]) { j++; } if(j == len) { break; } }
if(j == len) cout << "28TECH" << endl; else cout << "HCET82" << endl; return 0; }
Các bạn tham khảo(Đừng có chép nha)
include <iostream>
include <string>
using namespace std; int main() { int N; cin >> N; string A; for (int i = 0; i < N; ++i) { char ch; cin >> ch; if (i % 2 == 0) A += ch; } size_t pos = 0; string target = "28tech"; for (char c : target) { pos = A.find(c, pos); if (pos == string::npos) { cout << "HCET82" << endl; return 0; } ++pos; } cout << "28TECH" << endl; return 0; }
include <bits/stdc++.h>
using namespace std;
int main() { iosbase::syncwithstdio(false); cin.tie(NULL); int n; cin>>n; char a[n]; map<char, int> mpmax; map<char, int> mp_min; vector<char> b = {'2','8','t','e','c','h'}; set<char> s = {'2','8','t','e','c','h'}; set<char> c = s; for(int i=0; i<n; i++){ cin>>a[i];
}
include<bits/stdc++.h>
} Bị sai 1 test nhưng chưa hiểu vì sao, ai giúp mình với
int n; cin >> n; cin.ignore();
string s; getline(cin,s); stringstream ss(s); string se = ""; string token; while(ss >> token){ for(int i=0; i < token.size();i++){ if(i % 2 == 0){ if(token[i] == '2' || token[i] == '8' || token[i] == 't' || token[i] == 'e'|| token[i] == 'c'|| token[i] == 'h' ){ se += token; } } } } int d2 =0, d8 =0, dt =0, de =0, dc =0, dh = 0; int m2 = -1, m8 = -1, mt = -1, me = -1, mc = -1, mh = -1; for(int i = 0; i < se.size();i++){ if(se[i] == '2') { d2++; if(m2 == -1){ m2 = i; } } if(se[i] == '8') { d8++; if(m2 != -1 && m8 == -1){ m8 = i; } } if(se[i] == 't') { dt++; if(m8 != -1 && mt == -1){ mt = i; } } if(se[i] == 'e') { de++; if(mt != -1 && me == -1){ me = i; } } if(se[i] == 'c') { dc++; if(me != -1 && mc == -1){ mc = i; } } if(se[i] == 'h') { dh++; if(mc != -1 && mh == -1){ mh = i; } } } if(d2 != 0 && d8 != 0 && dt != 0 && de !=0 && dc != 0 && dh != 0 && m2 != -1 && m8 != -1 && mt != -1 && me != -1 && mc != -1 && mh != -1){ cout<< "28TECH"<< endl; } else cout << "HCET82" << endl;
include <bits/stdc++.h>
using namespace std;
define ll long long
ll n,dem=0; vector<char>v;
int main() {
}