開始刷題,感覺代碼量和基礎太渣了,導致數據結構不會,重頭慢慢刷吧~
1、題目
輸入樣例:
242
輸出樣例:
@_@ 726
2、代碼
#include<stdio.h>
int main(){
int min;
scanf("%d",&min);
int s1=0,s2=0,run=10,rest=-1;
while(min--){
s1+=3;
if(run-->0){
s2+=9;
}
if(run==0){
if(s2>s1&&rest!=0){
rest=30;
}
else{
run=10;
}
}
if(rest--==0){
run=10;
}
}
if(s1>s2){
printf("@_@ %d",s1);
}
else if(s1<s2){
printf("^_^ %d",s2);
}
else{
printf("-_- %d",s2);
}
return 0;
}
3、討論
這個題很有意思的哈,你要找到一個變量,用來衡量這個關係,時間確實更好一些,不過撕裂時間不是特別好,模擬自然時間,這樣就能更好的寫好龜兔賽跑的過程。
定義兩個變量,一個 run
,一個 rest
,用來實現運動和休息的過程,如果消耗完了,再重新賦予,這樣子。兔子每跑完十分鐘,都需要驗證一下自己和烏龜誰跑得快,如果自己快同時沒有休息的話,那麼休息30分鐘,如果休息結束,那麼跑十分鐘。
妙啊!!!