1 solutions

  • 0
    @ 2025-10-1 18:11:15
    这题关键点在于:
    小母猪第二年就可以生2只小母猪和2只小公猪;第三年开始每年可以生4只小母猪和4只小公猪;小公猪在第二年就要被赶出大家庭;猪的寿命只有六年
    我们可以设s指存活时间大于等于3且小于6的母猪的数量,a[i]为新出生母猪的数量
    s可以由前缀和得到,s+=a[i-2]-a[i-6]。a[i-2]代表可以新出生4只公猪和4只母猪的数量,a[i-6]代表死猪的数量
    公猪因为在出生第二年就被赶走,所以第n年留在大家庭的只有第n年新出生的公猪,新出生的公猪数量和新出生的母猪数量相等,即a[n]
    母猪的数量由三个部分得到:存活时间大于等于3年小于6年即s,第二年出生的母猪是第n年的新出生母猪即a[n-1],第一年出生的母猪是第n年的新出生母猪即a[n]
    通过上述推导可以得出第n年的猪的总数等于s+a[n-1]+2*a[n]
    
    • 1

    Information

    ID
    322
    Time
    1000ms
    Memory
    64MiB
    Difficulty
    10
    Tags
    # Submissions
    2
    Accepted
    1
    Uploaded By