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

ขั้นตอนการเขียนโค้ด · สตริงย่อยครอบคลุมที่สั้นที่สุด

03
ผลิตภัณฑ์

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

หาสตริงย่อยสั้นที่สุดที่ครอบคลุมจำนวนอักขระที่ต้องการในข้อความสองชุดไม่เกิน 1024 จุดรหัส. ทดสอบเงื่อนไขว่างและไม่พบผล เลือกผลเสมอกันด้านซ้ายสุดโดยไม่ปรับรูปแบบ Unicode.

01

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

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

02

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

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

03

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

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

04

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

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

สตริงย่อยครอบคลุมที่สั้นที่สุด

ขั้นตอนการทำงาน
from collections import Counter

def covering_window(text, required):
    if type(text) is not str or type(required) is not str or max(len(text), len(required)) > 1024:
        raise ValueError("window.input")
    if not required:
        return ""
    need, missing, left, best = Counter(required), len(required), 0, None
    for right, char in enumerate(text, 1):
        if need[char] > 0:
            missing -= 1
        need[char] -= 1
        while missing == 0:
            if best is None or right-left < best[1]-best[0]:
                best = (left, right)
            old = text[left]
            need[old] += 1
            if need[old] > 0:
                missing += 1
            left += 1
    return "" if best is None else text[best[0]:best[1]]

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

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

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

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