Cho một mảng (array) gồm các phần tử hằng số, cần xác định kiểu chung của mảng theo luật kiểm tra kiểu đồng nhất phần tử (homogeneity check) có widening.
Kiểu của mỗi hằng số được phân loại như trong bài toán kiểm tra biểu thức: int, float, bool, hoặc string (chuỗi trong dấu ngoặc kép, không chứa khoảng trắng).
Luật xác định kiểu mảng:
int và float (không có kiểu nào khác xuất hiện): kiểu mảng được ép kiểu ngầm định thành float (mọi phần tử int được widen thành float).bool hoặc string trộn lẫn với kiểu khác) là lỗi kiểu: mảng không đồng nhất.Ví dụ: mảng 1 2.5 3 có các kiểu int, float, int → chỉ gồm int và float → kiểu mảng là float.
Dòng đầu tiên là số nguyên n (0≤n≤1000) — số phần tử của mảng. Nếu n>0, dòng tiếp theo (có thể xuống dòng hoặc không, các token chỉ cần cách nhau bởi khoảng trắng) chứa n token, mỗi token là một hằng số như mô tả ở trên.
In ra một dòng duy nhất là kiểu của mảng: int, float, bool, string, Empty Array (khi n=0), hoặc Type Error nếu mảng không đồng nhất kiểu.
Ví dụ:
Đầu vào:
1
5
Đầu ra:
int
Đầu vào:
0
Đầu ra:
Empty Array
Đang tải editor...