TRAINING K22 - CƠ BẢN - BUỔI 7
Points: 100
Một từ hoặc câu được gọi là pangram nếu nó chứa tất cả các chữ cái của bảng chữ cái trong ngôn ngữ đó ít nhất một lần. Pangram thường được sử dụng để thử nghiệm kiểu chữ trong in ấn và thiết bị đầu ra.
Bạn có một chuỗi gồm các chữ cái Latin viết hoa và viết thường. Hãy kiểm tra xem chuỗi này có phải là pangram hay không. Một chữ cái được coi là có mặt trong chuỗi nếu nó xuất hiện dưới dạng viết hoa hoặc viết thường.
Input
- Dòng đầu tiên chứa số nguyên ~n~ ~(1 \le n \le 100)~ - độ dài của chuỗi cần kiểm tra.
- Dòng thứ hai bao gồm một chuỗi chứa các chữ cái Latin viết hoa và viết thường.
* Output *
- In
YESnếu chuỗi là pangram, ngược lại inNO.
Sample Input 1
26
MGJYIZDKsbhpVeNFlquRTcWoAx
Sample Output 1
YES
Points: 100
Vec tơ là một kiến thức quan trọng trong chương trình THPT và cả Đại học. Trong không gian, ta biết một vector ~\overrightarrow{a}=(x,y,z)~ có tọa độ ba thành phần là ~x,y,z~. Hãy viết chương trình khai báo một struct tên là vecto có 3 thành phần nguyên là ~x,y,z~ và thực hiện các yêu cầu bên dưới:
Nhận vào thông tin của 2 vec tơ ~a=(x_1, y_1, z_1)~ và ~b=(x_2, y_2, z_2)~.
Tính tổng hai vec tơ và độ dài của vec tơ tổng đó (làm tròn đến số nguyên gần nhất).
Viết hàm void tính tích vô hướng, nhận vào 2 vec tơ, in ra tích vô hướng và YES/NO cho biết hai vec tơ có vuông góc nhau không?
Viết hàm void tính tích có hướng, nhận vào 2 vec tơ, in ra tích có hướng và YES/NO cho biết hai vec tơ có song song nhau không?
Input
Hai dòng và mỗi dòng gồm 3 số nguyên (có thể âm, dương hoặc bằng ~0~) cho biết tọa độ vec tơ, các số có giá trị tuyệt đối không vượt quá ~10^3.~
Output
Dòng 1 in ra tổng hai vec tơ và độ dài của nó.
Dòng 2 in ra giá trị tích vô hướng và in YES/NO cho biết có vuông góc không?
Dòng 3 in ra giá trị tích có hướng và in YES/NO cho biết có song song không?
Sample input:
1 2 3
4 0 6
Sample output:
5 2 9 10
22 NO
12 6 -8 NO
Giải thích: tổng hai vec tơ là ~(1+4,2+0,3+6)=(5,2,9)~ có độ dài là ~\sqrt{5^2+2^2+9^2}=\sqrt{110} \approx 10.488~ làm tròn thành ~10~. Tiếp tục áp dụng các công thức (SV có thể search thêm Google) để tính được tích vô hướng, có hướng và kiểm tra vuông góc, song song.
Sử dụng cấp phát động, nhập ~n~ giá trị nguyên của mảng A, thực hiện chèn số 0 vào trước các phần tử chẵn của nó và in mảng mới ra.
Input
Dòng đầu tiên gồm số ~n~ cho biết kích thước mảng với ~1 \le n \le 100.~
Dòng tiếp theo gồm giá trị các phần tử của mảng A, các số tự nhiên không vượt ~2023.~
Output
Dòng đầu tiên cho biết kích thước của mảng mới.
Dòng tiếp theo là giá trị các phần tử của mảng mới.
Sample input
5
1 2 3 4 5
Sample output
7
1 0 2 3 0 4 5
Để quản lý điểm thi môn KỸ THUẬT LẬP TRÌNH của hai lớp DHTH16A và DHTH16B, người ta sử dụng cấp phát vùng nhớ động (vùng nhớ heap) để lưu trữ điểm thi cuối kỳ (viết tắt CK) là các số thực thỏa mãn (0 ≤ CK ≤10). Anh/chị hãy dùng ngôn ngữ C, viết chương trình thực hiện tuần tự các công việc sau:
Nhập điểm thi của n sinh viên lớp DHTH16A vào vùng nhớ do con trỏ A trỏ tới, nhập điểm thi của m sinh viên lớp DHTH16B vào vùng nhớ do con trỏ B trỏ tới (m, n > 0). Yêu cầu hãy xuất ra số sinh viên có điểm thi >= 8 của mỗi lớp.
Input
Dòng đầu tiên chứa số nguyên dương n (1 <= n <= 20).
Dòng thứ hai, chứa n số nguyên dương --- là điểm thi của lớp DHTH16A.
Dòng thứ ba chứa số nguyên dương m (1 <= m <= 20).
Dòng thứ tư, chứa m số nguyên dương --- là điểm thi của lớp DHTH16B.
Output
Dòng đầu tiên, là số lượng sinh viên có điểm thi >= 8 của lớp DHTH16A.
Dòng thứ hai, là số lượng sinh viên có điểm thi >= 8 của lớp DHTH16B.
Ví dụ Input
5
8 7 3 5 6
6
3 4 9 10 10 8
Ví dụ Output
1
4
Points: 100
Câu 1:
Để trở thành một sinh viên code giỏi bạn hãy sử dụng cấp phát vùng nhớ động (vùng nhớ heap). Viết chương trình thực hiện các yêu cầu sau:
Nhập m giá trị nguyên cho mảng ~A~, ~n~ giá trị nguyên cho mảng ~B (m, n > 0)~ (Các giá trị trong cùng một mảng là khác nhau và ~> 0~)
Tính tích các phần tử chẵn của cả ~A~ và ~B~.
Thực hiện phép toán giao của ~A~ và ~B~.

Input
Gồm 3 dòng:
- Dòng 1: Chứa 2 số nguyên ~m, n~ ~(1 ≤ m, n ≤ 1000)~.
- Dòng 2: Chứa ~m~ giá trị nguyên của mảng ~A~
- Dòng 3: Chứa ~n~ giá trị nguyên của mảng ~B~
Output
Gồm 2 dòng:
- Dòng 1: Tích của các phần tử chẵn của cả ~A~ và ~B~, nếu không có thì in ~-1~
- Dòng 2: Giao của ~A~ và ~B~ được in ra theo thứ tự tăng dần, nếu không có thì in ~-1~
Examples
Input
3 4
3 2 1
2 3 4 5
Output
16
2 3
Giải thích:
tích của các phần tử chẵn: ~2 * 2 * 4 = 16~
Phần giao là: ~2, 3~
Input
1 1
5
7
Output
-1
-1
Giải thích:
không có phần tử chẵn để tính tích nên kết quả là ~-1~
Phần giao là là rỗng nên in ~-1~
Input
6 4
2 5 3 11 4 1
7 9 3 1
Output
8
1 3
Bạn đang là nhân viên data analysis của một công ty ABC, hôm nay bạn được cấp trên nhờ xử lý một số data có quy trình như sau:
- Đầu tiên, nhập vào n con nhím, với mỗi con nhím sẽ có các thông tin sau: mã nhím, tên nhím, giá tiền, số lượng
- Với các thông tin của n con nhím được nhập ở chức năng trên, bạn sẽ xuất ra tất cả các thông tin của các con nhím có giá tiền là lớn nhất theo thứ tự lần lượt mà các con nhím được nhập vào!.
- Tìm kiếm "Yellow": bạn sẽ tìm kiếm con nhím có mã nhím là "Yellow" và xuất thông tin tương ứng của con nhím đó ra màn hình.
Bạn hãy viết chương trình để xử lý các nhiệm vụ ở trên nhé.
Input Dòng đầu tiên chứa số nguyên dương n (1 <= n <= 20).
n dòng tiếp theo, mỗi dòng sẽ chứa 4 thông tin của con nhím tương ứng với:
- Mã nhím: là một chuỗi tối đa 8 ký tự
- Tên nhím: là một chuối tối đa 16 ký tự.
- Giá tiền: là một số nguyên.
- Số lượng: là một số nguyên.
Output
Là các thông tin của từng con nhím lần lượt in ra màn hình sau khi thực hiện các chức năng trong quy trình kể trên.
Ví dụ Input
5
Blue NhimA 100000 10
Yellow NhimARap 500000 3
AB NhimAB1 345000 20
A1 NhimDen 2020202 33
Yellow NhimVN 50000 100
Ví dụ Output
A1 NhimDen 2020202 33
Yellow NhimARap 500000 3
Yellow NhimVN 50000 100