Aluminum21
Junior Member
Cám ơn thím. Để toy thử làm lạinếu mọi số đều chia hết số bé nhất thì return ceil(count(min_value) / 2), ko return 1

Cám ơn thím. Để toy thử làm lạinếu mọi số đều chia hết số bé nhất thì return ceil(count(min_value) / 2), ko return 1

Ý tưởng lớn gặp nhau rồi, bài đó t cũng dùng multiset,cay quá. Nghĩ ra dùng 2 thằng multiset rồi mà éo hiểu sao rate limit![]()
![]()

có code k fency![]()

trời ơi đúng là đầu thông minh thì chân tay nhàn hơnnếu mọi số đều chia hết số bé nhất thì return ceil(count(min_value) / 2), ko return 1

lâu lắm mới thấy anh quay lại topic nàyXem tệp đính kèm 2299858
Dư luận bắt đầu đòi huỷ rồi. Trước cx có contesst down server lúc đầu, xong cx huỷ![]()
Vẫn chưa hiểu lắm my fencenếu mọi số đều chia hết số bé nhất thì return ceil(count(min_value) / 2), ko return 1

Nay hết môn trên trường rồi nên khá rảnhlâu lắm mới thấy anh quay lại topic này

Nếu số bé nhất là chỉ có số lần xuất hiện là 1 thì cứ dùng số đó % mọi số còn lại thì luôn luôn ra số đó. ví dụ [2, 3, 4, 4, 6]. Cứ dùng số 2 % 3, 4, 4, ... thì đều ra 2. cuối cùng còn lại số 2Vẫn chưa hiểu lắm my fence![]()

má, thế mà k nghĩ ra, t làm kiểu sort cái array, xong mỗi lần lấy 1 nửa trái, chia lấy dư cho nửa phải, code gặp conner case mãi k xong,Nếu số bé nhất là chỉ có số lần xuất hiện là 1 thì cứ dùng số đó % mọi số còn lại thì luôn luôn ra số đó. ví dụ [2, 3, 4, 4, 6]. Cứ dùng số 2 % 3, 4, 4, ... thì đều ra 2. cuối cùng còn lại số 2
Bài trick lỏ![]()

ĐệtNếu số bé nhất là chỉ có số lần xuất hiện là 1 thì cứ dùng số đó % mọi số còn lại thì luôn luôn ra số đó. ví dụ [2, 3, 4, 4, 6]. Cứ dùng số 2 % 3, 4, 4, ... thì đều ra 2. cuối cùng còn lại số 2
Bài trick lỏ![]()
đúng là lanh lợi thì đỡ tay chân mà
má
Hèn gì tụi nó accept nhiều thếGọi số bé nhất là mnVẫn chưa hiểu lắm my fence![]()
class Solution:
def minimumArrayLength(self, nums: List[int]) -> int:
mp = {}
g = 0
for num in nums:
mp[num] = mp.get(num , 0) + 1
g = gcd(g , num)
tmp = mp.get(g , 0)
if tmp <= 1: return 1
return (tmp + 1) // 2
class Solution:
def minimumArrayLength(self, nums: List[int]) -> int:
minValue = min(nums)
count = 0
for num in nums:
if num%minValue > 0:
return 1
if num == minValue:
count += 1
return (count + 1)//2
dễ thế mà ko nghĩ raChắc mấy fence đó là nhiều nhìn ra cái dạng mod nàysao mấy thím nghĩ ra greedy ảo vậy![]()
thấy 4k mấy thằng giải được thì chắc chắn là ko khó, do mình ngu thôi fence 
e đọc đề cứ đẩy vào heapq xog đẩy và pop ra xog thằng bn bảo dùng gready là xong đúng k nhanh nhạy cứ thích brute forceChắc mấy fence đó là nhiều nhìn ra cái dạng mod nàythấy 4k mấy thằng giải được thì chắc chắn là ko khó, do mình ngu thôi fence
![]()