AMcoder - javascript, python, java, html, php, sql

մինչդեռ հանգույցը երբեք չի ավարտվում, և ես չեմ կարող հասկանալ, թե ինչպես կանգնեցնել այն

Հիմնականում ես հանձնարարություն ունեմ, ամեն ինչ հարթ է ընթանում, բայց երբ ես որոշակի արժեք մուտքագրում եմ օղակի մեջ, այն երբեք չի դադարում, ի տարբերություն իմ մուտքագրած այլ արժեքների, ինչը տարօրինակ է, և ես չեմ կարողանում հասկանալ, թե ինչպես վարվել դրա հետ: Ահա կոդը.

dim = int(input())
pos = int(input())
v = int(input())
vi = v
a = int(input())
posa = dim +1

print(pos)
while v != 0 or v*vi>0:
    if -dim < pos < dim or pos == dim or pos == -dim:
        pos += v
    elif pos > dim:
        pos = dim
        v -= a
        v = -v
    elif pos < -dim:
        pos = -dim
        v += a
        v = -v
    if -dim <= pos <= dim and not posa==pos:
        print(pos)
        posa = pos

Որոշ համատեքստում դա ծրագիր է, որը կոչված է տալ բամպեր մեքենայի դիրքը, խամրած և խամրած պատերն են, որոնց վրա մեքենան կարող է բախվել և այնուհետև ետ ցատկել, pos-ը մեկնարկային դիրքն է, v-ն սկզբնական արագությունն է, և a է: որքանով է արժեքի բացարձակ արժեքը նվազում պատին բախվելուց հետո: Ենթադրվում է, որ այն ի վերջո կանգ կառնի, երբ այլևս արագություն չկա: Խնդիրն այն է, որ եթե մուտքագրումը 10,-3,6,2 է; այն աշխատում է կատարյալ, բայց եթե դրա մուտքագրումը 10,-3,8,3 է; հանգույցը երբեք չի ավարտվում, և ես չեմ կարող հասկանալ, թե ինչու:

Խմբագրել. Ես չեմ կարող օգտագործել, սահմանել, ներմուծել, կոտրել, շարունակել, ցուցակագրել և նման բաներ, հիմնականում ամենահիմնական բաները, ինչպիսիք են՝ եթե և երբ:

22.11.2020

  • Փորձե՞լ եք վրիպազերծիչ օգտագործել: Փորձե՞լ եք ստուգել, ​​թե որն է արժեքը յուրաքանչյուր փոփոխականի համար, օղակի սկզբում: Փորձե՞լ եք ձեռքով հետագծել տրամաբանությունը: 22.11.2020
  • Ի՞նչն է կոդում երաշխավորում, որ v երբևէ հավասար կլինի զրոյի: Օրինակ, եթե v==1 և a==2, դուք կարող եք բախվել v-ին հետ ու առաջ -1-ի և 1-ի միջև, բայց երբեք չհասնելով զրոյի: 22.11.2020

Պատասխանները:


1
    if -dim < pos < dim or pos == dim or pos == -dim:
        pos += v
    if -dim <= pos <= dim and not posa==pos:
        print(pos)
        posa = pos

այդ բլոկները v-ի համար գործառնություն չունեն, դրա արժեքը երբեք չի փոխվել, ընդմիշտ պտտվում է:

22.11.2020
  • Բանն այն է, որ pos-ը փոխվի այնպես, որ ի վերջո if -dim < pos < dim or pos == dim or pos == -dim-ը ձախողվի՝ թույլ տալով կամ elif pos > dim:-ին կամ elif pos < -dim:-ին, որից հետո v-ը կարող է փոխվել: 22.11.2020
  • Նոր նյութեր

    Օգտագործելով Fetch Vs Axios.Js-ը՝ HTTP հարցումներ կատարելու համար
    JavaScript-ը կարող է ցանցային հարցումներ ուղարկել սերվեր և բեռնել նոր տեղեկատվություն, երբ դա անհրաժեշտ լինի: Օրինակ, մենք կարող ենք օգտագործել ցանցային հարցումը պատվեր ներկայացնելու,..

    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար
    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար Ինչպե՞ս հանգստացնել ձեր միտքը և աշխատեցնել ձեր պրոցեսորը: Ինչպես մնալ հանգիստ և զարգանալ ճնշման տակ...

    Մեքենայի ուսուցում բանկային և ֆինանսների ոլորտում
    Բարդ, խելացի անվտանգության համակարգերը և հաճախորդների սպասարկման պարզեցված ծառայությունները բիզնեսի հաջողության բանալին են: Ֆինանսական հաստատությունները, մասնավորապես, պետք է առաջ մնան կորի..

    Ես AI-ին հարցրի կյանքի իմաստը, այն ինչ ասում էր, ցնցող էր:
    Այն պահից ի վեր, երբ ես իմացա Արհեստական ​​ինտելեկտի մասին, ես հիացած էի այն բանով, թե ինչպես է այն կարողանում հասկանալ մարդկային նորմալ տեքստը, և այն կարող է առաջացնել իր սեփական արձագանքը դրա..

    Ինչպես սովորել կոդավորումը Python-ում վագրի պես:
    Սովորելու համար ծրագրավորման նոր լեզու ընտրելը բարդ է: Անկախ նրանից, թե դուք սկսնակ եք, թե առաջադեմ, դա օգնում է իմանալ, թե ինչ թեմաներ պետք է սովորել: Ծրագրավորման լեզվի հիմունքները, դրա..

    C++-ի օրական բիթ(ե) | Ամենաերկար պալինդրոմային ենթաշարը
    C++ #198-ի ամենօրյա բիթ(ե), Ընդհանուր հարցազրույցի խնդիր. Ամենաերկար պալինդրոմային ենթատող: Այսօր մենք կանդրադառնանք հարցազրույցի ընդհանուր խնդրին. Ամենաերկար palindromic substring...

    Kydavra ICAReducer՝ ձեր տվյալների ծավալայինությունը նվազեցնելու համար
    Ի՞նչ է ICAReducer-ը: ICAReducer-ն աշխատում է հետևյալ կերպ. այն նվազեցնում է նրանց միջև բարձր փոխկապակցված հատկանիշները մինչև մեկ սյունակ: Բավականին նման է PCAreducer-ին, չնայած այն..