[CPP PTIT 2024]. TEST 4 09-12-2024
[Lý Thuyết Số - Toán Học]. Bài 94. Số chính phương lớn
Nộp bàiPoint: 100
Cho mảng A[] gồm N số nguyên, gọi K là tích các số trong mảng A[] bạn hãy xác định xem K có phải là số chính phương không ? Nếu nó là số chính phương thì bạn hãy in ra 28tech, đồng thời bạn phải in ra căn bậc hai của K sau khi chia dư căn này cho số 10^9 + 7 (1000000007), ngược lại nếu K không phải là số chính phương thì bạn chỉ cần in ra 29tech.
Đầu vào
Dòng 1 là N : Số lượng phần tử trong mảng
Dòng 2 là N số trong mảng A[]
Giới hạn
1<=N<=10^3
0<=A[i]<=10^9
Đầu ra
- In ra 29tech nếu K không phải là số chính phương, ngược lại in ra 28tech và căn bậc hai của K sau khi chia dư căn này cho 10^9 + 7.
Ví dụ :
Input 01
4
2 2 4 9
Output 01
28tech 12
Input 02
3
3 5 5 10
Output 02
29tech
[Sắp Xếp - Tìm Kiếm]. Bài 58. Loại bỏ đoạn thẳng
Nộp bàiPoint: 100
Cho N đoạn thẳng trên trục tọa độ Ox, mỗi đoạn thẳng bắt đầu từ hoành độ L và kết thúc tại hoành độ R. 2 đoạn thẳng được coi là không giao nhau nếu điểm bắt đầu của đoạn thẳng này lớn hơn hoặc bằng điểm kết thúc của đoạn thẳng trước.
Ví dụ [2, 5] và [5, 10] là 2 đoạn thẳng không giao nhau, trong khi đó [1, 3] và [2, 5] là 2 đoạn thẳng giao nhau.
28Tech cảm thấy khó chịu khi phải nhìn những đoạn thẳng bị giao cắt nhau, bây giờ anh ấy muốn bạn xóa đi 1 số đoạn thẳng ít nhất để tất cả những đoạn thẳng còn lại sẽ không còn giao nhau.
Đầu vào
Dòng 1 là N : số lượng đoạn thẳng
N dòng tiếp theo mỗi dòng là [Li, Ri] tương ướng với điểm bắt đầu và kết thúc của đoạn thẳng thứ i
Giới hạn
1<=N<=10^5
0<=L[i]<R[i]<=10^9</p>
Đầu ra
In ra số lượng đoạn thẳng ít nhất cần loại bỏ để những đoạn thẳng còn lại không bị giao nhau
Ví dụ :
Input 01
5
4 5
2 3
1 4
6 7
5 9
Output 01
2
Giải thích test :
Loại bỏ đi đoạn thẳng [1, 4] và [5, 9] thì 3 đoạn thẳng còn lại sẽ không bị giao nhau
[Mảng 2 Chiều]. Bài 30. Đường đi của quân Xe
Nộp bàiPoint: 100
Tèo khá thích chơi cờ vua và quân cờ mà Tèo yêu thích chính là quân Xe, bây giờ Tèo có một bàn cờ cỡ NxN, trên bàn cờ sẽ có những ô trống và có những ô có vật cản, nhiệm vụ của bạn là hãy xác định xem số lượng ô trên bàn cờ mà quân Xe có thể di chuyển tới, biết rằng nó có thể đi qua đi lại 1 ô trống nhiều lần và không thể đi vào ô có vật cản.
Bàn cờ gồm N hàng N cột, mỗi ô là số 1 tương ứng với vật cản và ô số 0 tương ứng với ô trống. Ban đầu quân Xe nằm ở vị trí hàng S và cột T và ô (S, T) là ô trống
Đầu vào
• Dòng 1 là N, S, T
• N dòng tiếp theo mỗi dòng gồm N số
Giới hạn
• 5<=N<=20
• 0<=A[i][j]<=1
Đầu ra
In ra số lượng ô trên bàn cờ mà quân Xe có thể đến được
Ví dụ :
Input 01
7 4 6
1 1 1 0 0 1 0
1 1 0 0 0 1 1
0 1 0 0 0 0 0
1 0 1 0 1 0 1
1 0 1 1 1 1 0
1 1 0 0 1 0 1
0 0 0 0 1 1 0
Output 01
12
Giải thích :
Những ô quân Xe có thể đi tới : 4 6, 3 6, 3 5, 2 5, 1 5, 1 4, 2 4, 3 4, 4 4, 3 3, 2 3, 3 7
[Xâu Ký Tự]. Bài 74. 28Tech & good string
Nộp bàiPoint: 100
28Tech coi một xâu ký tự là xâu tốt nếu tất cả các ký tự trong xâu có số lần xuất hiện bằng nhau, ví dụ xâu "28tech" cũng là một xâu tốt vì tất cả các ký tự trong xâu đều xuất hiện 1 lần và bằng nhau.
Tuy nhiên một xâu cũng được coi là 1 xâu tốt nếu bạn có thể xóa đi 1 ký tự tại 1 chỉ số trong xâu và các ký tự còn lại sẽ có số lần xuất hiện bằng nhau. Ví dụ xâu "accb" là một xâu tốt vì ta có thể xóa đi 1 ký tự c và các ký tự còn lại là a, b, c đều có số lần xuất hiện bằng nhau.
Cho xâu S chỉ bao gồm các ký tự in thường, hãy in ra 28tech nếu xâu đó là xâu tốt, ngược lại in ra 29tech.
Đầu vào
- Dòng duy nhất chứa xâu S
Giới hạn
- 1<=len(S)<=10^5
Đầu ra
- In ra kết quả của bài toán
Ví dụ :
Input 01
abcdefgh
Output 01
28tech
Input 02
abccc
Output 02
29tech
[Kế Thừa - Đa Hình]. Bài 12. Person Student Staff
Nộp bàiPoint: 100
Cho 3 lớp Person, Student, Staff theo thiết kế dưới đây
Lớp Person gồm 2 thuộc tính : tên(name) và địa chỉ(address)
Lớp Student kế thừa lớp Person và có thêm thuộc tính : ngành học (program), năm học(year) và học phí (fee)
Lớp Staff kế thừa lớp Person và có thêm thuộc tính : trường học (school) và lương (pay).
Cho danh sách nhân viên và sinh viên của 1 trường đại học, bạn hãy đọc vào danh sách và thực hiện
In ra danh sách nhân viên sau khi sắp xếp lương giảm dần, nếu có 2 người có cùng lương thì sắp xếp theo tên tăng dần về từ điển.
In ra danh sách sinh viên theo thứ tự học phí giảm dần, nếu có 2 sinh viên có cùng học phí thì sắp xếp theo tên tăng dần về từ điển.
Đầu vào
Dòng 1 là N và M : số lượng sinh viên và nhân viên
Các dòng tiếp theo mô tả sinh viên, mỗi sinh viên gồm 5 dòng : Tên, địa chỉ, ngành học, năm học, học phí
Các dòng tiêp theo mô tả nhân viên, mỗi nhân viên gồm 4 dòng : Tên, địa chỉ, tên trường, lương
Giới hạn
1<=N,M<=2000
Đầu ra
In ra danh sách nhân viên sau đó in ra danh sách sinh viên theo mẫu
Ví dụ :
Input 01
5 9
-----------------
Philip Smith
PennsylvaniaRhode Island
Health Professions
4
131000
-----------------
Rick Williams
Wisconsin
Visual and Performing Arts
3
100000
-----------------
Benjamin Erickson
New Mexico
Engineering
1
110000
-----------------
Claude Anderson
Delaware
Business
1
135000
-----------------
Samuel Matthews
IllinoisIndiana
Health Professions
1
109000
-----------------
Ramon Wheeler
Iowa
Harvard
122000
-----------------
Dan Flores
North Carolina
Harvard
187000
-----------------
Dan Flores
Maryland
Harvard
192000
-----------------
Samuel Matthews
Georgia
Harvard
104000
-----------------
Aidan Simmons
IllinoisIndiana
Stanford
198000
-----------------
Liam Smith
New York
Harvard
178000
-----------------
Charlie Burns
North Dakota
Harvard
194000
-----------------
Conner Martin
Massachusetts
Stanford
139000
-----------------
Clark Green
Connecticut
Harvard
156000
-----------------
Output 01
Student List :
-----------------
Full Name : Claude Anderson
Address : Delaware
Program : Business
Year : 1
Fee : 135000 $
-----------------
Full Name : Philip Smith
Address : PennsylvaniaRhode Island
Program : Health Professions
Year : 4
Fee : 131000 $
-----------------
Full Name : Benjamin Erickson
Address : New Mexico
Program : Engineering
Year : 1
Fee : 110000 $
-----------------
Full Name : Samuel Matthews
Address : IllinoisIndiana
Program : Health Professions
Year : 1
Fee : 109000 $
-----------------
Full Name : Rick Williams
Address : Wisconsin
Program : Visual and Performing Arts
Year : 3
Fee : 100000 $
-----------------
Staff List :
-----------------
Full Name : Aidan Simmons
Address : IllinoisIndiana
School : Stanford
Pay : 198000 $
-----------------
Full Name : Charlie Burns
Address : North Dakota
School : Harvard
Pay : 194000 $
-----------------
Full Name : Dan Flores
Address : Maryland
School : Harvard
Pay : 192000 $
-----------------
Full Name : Dan Flores
Address : North Carolina
School : Harvard
Pay : 187000 $
-----------------
Full Name : Liam Smith
Address : New York
School : Harvard
Pay : 178000 $
-----------------
Full Name : Clark Green
Address : Connecticut
School : Harvard
Pay : 156000 $
-----------------
Full Name : Conner Martin
Address : Massachusetts
School : Stanford
Pay : 139000 $
-----------------
Full Name : Ramon Wheeler
Address : Iowa
School : Harvard
Pay : 122000 $
-----------------
Full Name : Samuel Matthews
Address : Georgia
School : Harvard
Pay : 104000 $
-----------------