alice編程
發布時間: 2025-08-29 02:40:41
alice喜歡的是n位數,我們可以取所有不大於n位數的非負整數作為集合A;把小於n位數的非負整數作為集合B。
那麼我們知道alice喜歡的數是集合A中的數去除集合B中的數。A-B.
比如alice喜歡的三位數,那麼最大的三位數是999,集合A就是從0到999,而集合B就是0到99。
比如alice喜歡一位數,那麼最大一位數是9,集合A為0到9,集合B為空集。
事情就變得很簡單了。
在集合A中bob喜歡的數個數一共有,集合A中最大的數對m的整除並加1,得到結果 a。
在集合B中bob喜歡的數個數一共有,集合B中最大的數對m的整除並加1,得到結果b。
舉例:alice喜歡三位數,bob是整除3的數。那麼A={0...999}, B={0...99}
因此 a = 999/3 + 1 = 334, b=99/3+1=34。
因此alice,bob都喜歡的數個數為 a-b=334-34= 300.
再舉例:alice喜歡三位數,bob是整除2的數。那麼A={0...999}, B={0...99}
因此 a = 999/2 + 1 = 500, b=99/2+1=50。
因此alice,bob都喜歡的數個數為 a-b=500-50= 450.
再舉例:alice喜歡一位數,bob是整除2的數。那麼A={0...9}, B=空集
因此 a = 9/2 + 1 = 5, b=0,這里B是空集,如果你理解之前為什麼加1就能理解b=0。
每次a,b求值運算都有一個加1,是因為集合包含元素0,而0能被任何整數整除。
這里由於集合B是空集,不包含任何元素,因此集合B中能被2整除的數據個數必定是0,因此 b= 0,
所以alice,bob都喜歡的數個數為 a-b=5 - 0 = 5.
熱點內容