習題 168 貓捉老鼠

2021-06-12 23:42:51 字數 1178 閱讀 3862

有乙隻很霸道的貓,捉來好多好多老鼠,然後,這只貓就開始開大餐了。

但為了顯得它與眾不同,它用了乙個很特別的就餐順序:

它先定好步長k,然後它吃掉第1個位置上的,然後再每隔k只再吃乙隻老鼠

一輪結束後,它再次從第1個位置開始繼續吃,直到最後只剩下乙隻老鼠為止。

而這最後乙隻老鼠這只貓會放走,因為它不想破壞生態平衡,它希望這只老鼠,

來年再製造n只。。。。。。(當然它怎麼找它的另一半就不管了。。。)

但這群老鼠中,有乙隻特別聰明,它希望不死,它經過計算,

於是一開始它就站在乙個特別的位置上,而最後,它果然沒死,被放走了,

你知道它站在哪個位置上嗎?

輸入:多組測試資料,每組一行,每行兩個正整數n和k (1 <= n,k <= 1000000 )

n和k的意義如描述

輸出:輸出這只老鼠站的位置

樣例輸入:

10 1

6 2樣例輸出:85

其它資訊:

以6 1為例(0表示這一輪這只貓所吃掉的):

1 2 3 4 5 6 7 8 9 10

第一輪:  0   0   0   0   0

第二輪:    0       0        0

第三輪:        0

經過兩輪後只剩下8號沒被吃

以6 2為例:

1 2 3 4 5 6

第一輪:  0     0

第二輪:    0       0

第三輪:      0

經過三輪後只剩下5號沒被吃

難度:easy

//#include "stdafx.h"

#define pb_id 168

#define cp_vc6

#include "string.h"

#include "stdio.h"

#define maxn 1000

int num[maxn];

int main(int argc, char* argv)

else if((j-i-g)%(k+1) == 0)

}if(ans == n-1) break;

} i = 0;

while(num[i++]);

printf("%d\n", i);

} return 0;

}

貓捉老鼠(python)解析

import turtle 海龜庫 import time import random 定義上下左右按鍵內容,此處b為老鼠 def up b.setheading 90 按x y座標算,轉90 b.forward 30 30個畫素 def down b.setheading 270 b.forwar...

貓捉老鼠問題系列(一)

形象化的數學問題,總是引人入勝,這個世界創意還是很重要的。從網上收集了一些貓和老鼠的數學話題,僅供欣賞之。在數軸上,0的位置停著乙個不動的老鼠,1的位置在初始時刻有乙隻貓。貓是可以走動的,每一步在數軸上分別以二分之一的概率或朝著正方向或朝著負方向走1的距離。當貓到達0的位置時,貓就抓到老鼠了,遊戲結...

貓捉老鼠問題系列(四)

從有限到無限,似乎是乙個無法逾越的鴻溝,需要思維的跨越。數學中引入極限概念,實現有限和無限的連線,而極限概念更聯絡著許多知名的悖論,如芝諾悖論,旅館悖論等等。可以說有限和無限的秘密,將是乙個永恆的話題。本章與極限雖無直接關係,但仍可據此浮想聯翩。乙隻貓發現離它10步遠的前方有乙隻老鼠在奔跑,便哈腰緊...