Ôn tập: bài tập lưới đơn giản
Thuộc phần Logic và luồng chương trình trong hành trình PHP của Coddy. Bài học 32 trên 68.
Thử thách
DễBạn sẽ nhận được một đầu vào: một mảng 2D biểu diễn lưới trò chơi đơn giản ở định dạng JSON. Lưới chứa các số biểu thị giá trị của các ô khác nhau. Hãy đọc đầu vào, chuyển chuỗi JSON thành một mảng 2D và thực hiện các thao tác sau:
- Tính và in ra tổng tất cả giá trị trong lưới
- Tìm và in ra giá trị lớn nhất trong lưới
- Đếm và in ra số ô có giá trị lớn hơn 5
- In ra giá trị tại hàng 1, cột 2 (sử dụng chỉ số bắt đầu từ 0)
In mỗi kết quả trên một dòng riêng theo đúng thứ tự nêu trên.
Định dạng đầu vào: Một dòng chứa một mảng JSON biểu diễn lưới trò chơi (ví dụ: [[3,7,2],[5,9,1],[8,4,6]])
Đầu ra dự kiến:
- Dòng 1: Tổng tất cả giá trị
- Dòng 2: Giá trị lớn nhất
- Dòng 3: Số ô có giá trị lớn hơn 5
- Dòng 4: Giá trị tại hàng 1, cột 2
Tự làm thử
<?php
// Đọc đầu vào JSON
$input = trim(fgets(STDIN));
// Chuyển chuỗi JSON thành mảng (array) hai chiều
// Quan trọng: Dùng (array) để chuyển đổi mảng đúng cách
$grid = json_decode($input, true);
// TODO: Viết code của bạn bên dưới
// 1. Tính tổng tất cả giá trị trong grid
// 2. Tìm giá trị lớn nhất trong grid
// 3. Đếm số ô có giá trị lớn hơn 5
// 4. Lấy giá trị ở hàng 1, cột 2
// In kết quả ra, mỗi dòng một kết quả
// echo $sum . "\n";
// echo $max . "\n";
// echo $count . "\n";
// echo $value . "\n";
?>Tất cả bài học trong Logic và luồng chương trình
1Hàm nâng cao
Hàm ẩn danhClosure và 'use'Hàm mũi tênHàm callbackDùng 'call_user_func'Hàm biếnTruyền tham chiếuHàm đệ quyÔn tập: tổng hợp về hàm4Mảng đa chiều
Tạo mảng 2 chiềuTruy cập phần tử trong mảng 2 chiềuChỉnh sửa phần tử trong mảng 2 chiềuLặp qua các vòng lặp lồng nhauMảng kết hợp 2 chiềuÔn tập: bài tập lưới đơn giản2Thao tác nâng cao với mảng
Thêm phần tử bằng 'array_push'Xóa phần tử bằng 'array_pop'Thêm phần tử vào đầu mảng bằng 'array_unshift'Xóa phần tử đầu mảng bằng 'array_shift'Gộp các mảng được đánh chỉ sốGộp các mảng kết hợpTrích xuất phần tử bằng 'array_slice'Kiểm tra giá trị bằng 'in_array'Tìm khóa bằng 'array_search'Ôn tập: bài tập về danh sách phát3Sắp xếp mảng
Sắp xếp mảng có chỉ số tăng dầnSắp xếp mảng có chỉ số giảm dầnSắp xếp mảng kết hợp theo giá trịSắp xếp mảng kết hợp theo khóaSắp xếp theo thứ tự tự nhiênSắp xếp tùy chỉnh bằng 'usort'Ôn tập: Sắp xếp bảng xếp hạngTự luyện tập: Trình biên dịch PHP online