亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

讓算法更高效

讓算法更高效

C#
慕碼人8056858 2021-07-13 14:01:26
兩個(2 位)數字寫在一起,所以它們形成一個 4 位數字。這個 4 位數字可以被這兩個數字的乘法相除。問題是我必須找到這個數字。我寫了一個算法并得到了 2 對這些數字。1) 13 和 52,所以 1352 可以除以 13 * 52。2) 17 和 34,所以 1734 可以除以 17 * 34。我的算法是這樣的:for (int i = 1010; i <= 9999; i++){    int mult = (i / 100) * (i % 100);    if ((i % 100) > 9 && i % mult == 0)    {        Console.WriteLine(i / 100 + " <--> " + i % 100);    }}編輯:使用這個算法(基于mentallurg答案)我發現這個數字快了一點for (int i = 10; i < 99; i++){    for (int j = 10; j < 99; j++)    {        int mult = i * j;        int num = i * 100 + j;        if (num % mult == 0)        {           Console.WriteLine(i + " <--> " + j);        }    }}我對如何使這個算法更有效感興趣。
查看完整描述

3 回答

?
holdtom

TA貢獻1805條經驗 獲得超10個贊

使用從 1 到 99 的 2 個嵌套循環,您將避免在每個步驟上進行兩次除法運算。


查看完整回答
反對 回復 2021-07-18
  • 3 回答
  • 0 關注
  • 228 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號