W2 HW Tutorial

Tun-Chin Kao @ Sprout 2020

SOLUTION

target存終點的步數

每次輸入steps

就用target - steps

最後看target是不是0

是 -> WIN

不是 ->LOSE

#include <iostream>
using namespace std;
int main(){
    int Times, Target, M, step;
    cin >> Times;

    while(Times > 0){  // Times 代表有幾個回合的側資
    	cin >> Target >> M; // M 代表要走幾次
        while(M > 0){
       	    cin >> step;
            Target = Target - step; // 每次去減掉走的步數
            M = M - 1;
        }
        if(Target != 0){
           cout << "LOSE" << endl;
        }else{
        	cout << "WIN" << endl;
        }
        Times = Times - 1;
    }
    return 0;
}

Solution

每次while判斷到1了沒

若否

while裡面做處理(奇數/偶數)

次數加一

最後輸出次數

#include <iostream>
using namespace std;
int main(){
    int Number, Counter = 0;
    cin >> Number;
    while(Number != 1){
        if(Number % 2 == 1){
            Number = Number * 3 + 1;
        }else{
            Number = Number / 2;
        }
        Counter = Counter + 1; // Counter++;
    }
    cout << Counter;
    return 0;
}
Made with Slides.com