QQuotaMosaic
ขั้นตอนการทำงาน

ขั้นตอนการเขียนโค้ด · การจัดสรรด้วยเศษสูงสุด

03
ผลิตภัณฑ์

ขั้นตอนการทำงาน

จัดสรรไม่เกิน 10000 ที่ให้ค่าน้ำหนักจำนวนเต็มไม่ติดลบไม่เกิน 1000 ค่าด้วยเศษสูงสุด. ทดสอบน้ำหนักศูนย์และเศษเท่ากันที่ตัดสินตามลำดับข้อมูล พร้อมปฏิเสธการจัดสรรบวกเมื่อน้ำหนักรวมศูนย์ก่อนหาร.

01

ดาวน์โหลดแอป

เลือกโฟลเดอร์และให้ผู้ช่วยอ่านไฟล์ที่เกี่ยวข้องก่อนแก้ไข ระบุเป้าหมายและขอบเขตของงานให้ชัดเจน

02

เปิดโฟลเดอร์โปรเจกต์

เลือก endpoint ที่เข้ากันได้ เครื่องมือที่ใช้ได้และคุณภาพคำตอบขึ้นอยู่กับโมเดลและเซิร์ฟเวอร์ที่ตั้งค่า

03

เชื่อมต่อและทดสอบโมเดล

ตรวจสอบการแก้ไขและผลลัพธ์คำสั่ง รันการตรวจสอบของโปรเจกต์ก่อนยอมรับผล โค้ดที่สร้างขึ้นไม่ได้ผ่านการทดสอบโดยอัตโนมัติ

04

ตรวจสอบการแก้ไขและรันการทดสอบ

เปรียบเทียบการทำงานจริงกับผลที่คาดหวัง หากการตรวจสอบไม่ผ่าน ให้หาสาเหตุก่อนแก้ไขเพิ่มเติม

การจัดสรรด้วยเศษสูงสุด

ขั้นตอนการทำงาน
def allocate(weights, seats):
    if type(weights) not in (list, tuple) or len(weights) > 1000:
        raise ValueError("weights.container")
    weights = tuple(weights)
    if type(seats) is not int or not 0 <= seats <= 10000:
        raise ValueError("seats.range")
    if len(weights) > 1000 or any(type(w) is not int or w < 0 for w in weights):
        raise ValueError("weights.invalid")
    total = sum(weights)
    if total == 0:
        if seats:
            raise ValueError("weight.zero")
        return [0] * len(weights)
    result = [w * seats // total for w in weights]
    remaining = seats - sum(result)
    order = sorted(range(len(weights)), key=lambda i: (-(weights[i] * seats % total), i))
    for i in order[:remaining]:
        result[i] += 1
    return result

ตรวจสอบก่อนนำไปใช้. ตรวจสอบการแก้ไขและผลลัพธ์คำสั่ง รันการตรวจสอบของโปรเจกต์ก่อนยอมรับผล โค้ดที่สร้างขึ้นไม่ได้ผ่านการทดสอบโดยอัตโนมัติ

พื้นที่เขียนโค้ดด้วย AI

ไอเดียถัดไปเริ่มต้นที่นี่

ดาวน์โหลดสำหรับ Windows ↗