Làm cách nào để tìm số của tất cả chuỗi (kết hợp của một mảng có ít nhất 3 giá trị liên tiếp, như [7,8,9]) và có số giá trị dài nhất?tìm tất cả chuỗi trong một mảng
từ [3,4,1,2,2] nó sẽ là 2 - ([1,2,3,4] hai lần, nhưng bỏ qua [1,2,3] * 2 và [2,3, 4] * 2)
từ [9,6,7,5,8] nó sẽ là 1 - ([5,6,7,8,9])
từ [1,2,3 , 1,2] nó sẽ là 4 ([1,2,3] * 3)
Cảm ơn
chỉnh sửa
điểm của việc này là đếm số lần chạy trong tay crib. Không quan trọng thứ tự mảng có chuỗi trong, miễn là chuỗi được tính không trùng lặp tất cả các thẻ.
chỉnh sửa 1
var $cards:Array = [9, 4, 3, 2, 2];
var $ranks:Array = [];
var $c:int;
for each ($c in $cards) {
if ($ranks[$c] == null) {
$ranks[$c] = 1;
}else {
$ranks[$c] ++;
}
}
này sẽ tạo ra một mảng ($ bậc) mà sẽ có những giá trị [2:2, 3:1, 4:1, 9:1]
từ này tôi sẽ có thể nhân lên các giá trị dưới 2, 3 ad4 4 và nhân chúng với 3, vì vậy tôi sẽ nhận được 2 * 1 * 1 * 3
Tôi đang cố gắng tìm ra cách tìm liên tiếp các giá trị và bỏ qua các giá trị không phải (như 9)
liên tiếp từ đầu của Array hoặc từ bất cứ nơi nào ? – Patrick