ロボットの問題
P地点を出発し、Q地点に積まれたボールをP地点まで運ぶことをくり返し、P地点まで運んだボールの個数を競うゲームに、ロボットA,Bが参加した。
Aは1度に3個ずつ運び、往復するのに15秒かかる。
Bは1度に5個ずつ運び、往復するのに25秒かかる。
ゲーム開始後Bはすぐ動き出したが、Aは動き出すまでに10秒かかった。
開始から420秒間のうち、Aがリードしている時間は[ ]秒であり、また、Bがリードしている時間は[ ]秒である。
っていう問題がどこぞのブログのコメント欄にあったのでプログラムしてみた
#include <stdio.h> int main() { int a=0; int b=0; int atime=0; int btime=0; for(int i=1;i<840;i++) { if(i>20&&(i-20)%30==0){a+=3;} if(i%50==0){b+=5;} if(a>b){atime++;} if(a<b){btime++;} } printf("%d %d\n",atime/2,btime/2); }
0.5秒づつ数えていくだけ。
スーパーpre記法が使いたかっただけである