目錄
演算法
實作
#輸出
首頁 後端開發 C++ 用C++編寫的由M個數字組成的N位數中能被5整除的數字

用C++編寫的由M個數字組成的N位數中能被5整除的數字

Sep 02, 2023 pm 04:25 PM
整數 c程式設計 除法

用C++編寫的由M個數字組成的N位數中能被5整除的數字

我們給了一個數字 N 以及一個由 M 位數字組成的陣列。我們的工作是找到n個數 由給定的 M 位數字組成的可被 5 整除的數字。

讓我們來看一些範例來理解問題的輸入和輸出。

In -

N = 2
M = 3
arr = {5, 6, 3}
登入後複製

出局 -

2
登入後複製
登入後複製

有 2 N 個數字 35 和 65 可能被 5 整除。讓我們來看另一個例子。

輸入-

N = 1
M = 7
arr = {2, 3, 4, 5, 6, 7, 8}
登入後複製

輸出-

1
登入後複製

給定陣列中只有1 個1 位元數字可以被5 整除。因此,我們的任務是找到給定的 N 個數字可以被 5 整除的數字的數目。 < /p>

數字必須以數字 0 或 5 結尾才能被 5 整除。讓我們看看演算法

演算法

  • 檢查對於給定陣列中的 0 和 5。 2. 如果同時存在 0 和 5,則有兩種方法將數字放入個位。否則,將有一種放置數字的方法。
    • 將計數初始化為 2。
    • 現在,剩餘的位置可以有 m - 1、m - 2, m - 3, ... n 種分別填滿它們的方法。
    • 寫一個從 0 迭代到 n - 1 的循環。
      • 減少陣列。
      • 將其與計數相乘。
  • 如果有單一數字 0 或 5,則有隻有一種方法可以將數字放入個位。
    • 將計數初始化為 2。
    • 現在,剩餘的位置可以有 m - 1、m - 2 , m - 3, ... n 種分別填充它們的方法。
    • 寫一個從 0 迭代到 n - 1 的循環。
      • 減少陣列。
      • 將其與計數相乘。
  • 如果沒有數字 0 或 5,則我們可以形成一個能被5整除的數字。此時返回-1。

實作

以下是上述演算法的C 實作

#include <bits/stdc++.h>

using namespace std;

int numbers(int n, int m, int arr[]) {
   bool isZeroPresent = false, isFivePresent = false;
   int numbersCount = 0;
   if (m < n) {
      return -1;
   }
   for (int i = 0; i < m; i++) {
      if (arr[i] == 0) {
         isZeroPresent = true;
      }
      if (arr[i] == 5) {
         isFivePresent = true;
      }
   }
   if (isZeroPresent && isFivePresent) {
      numbersCount = 2;
      for (int i = 0; i < n - 1; i++) {
         m--;
         numbersCount = numbersCount * m;
      }
   } else if (isZeroPresent || isFivePresent) {
      numbersCount = 1;
      for (int i = 0; i < n - 1; i++) {
         m--;
         numbersCount = numbersCount * m;
      }
   } else {
      return -1;
   }
   return numbersCount;
}
int main() {
   int arr[] = {5, 6, 3};
   cout << numbers(2, 3, arr) << endl;
   return 0;
}
登入後複製

#輸出

如果執行上面的程式碼,您將得到以下結果。

2
登入後複製
登入後複製

以上是用C++編寫的由M個數字組成的N位數中能被5整除的數字的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1653
14
CakePHP 教程
1413
52
Laravel 教程
1306
25
PHP教程
1251
29
C# 教程
1224
24
Oracle SQL中除法運算的用法 Oracle SQL中除法運算的用法 Mar 10, 2024 pm 03:06 PM

《OracleSQL中除法運算的用法》在OracleSQL中,除法運算是常見的數學運算之一。在資料查詢和處理過程中,除法運算可以幫助我們計算欄位之間的比例或得出特定數值的邏輯關係。本文將介紹OracleSQL中除法運算的用法,並提供具體的程式碼範例。一、OracleSQL中除法運算的兩種方式在OracleSQL中,除法運算可以用兩種不同的方式來進行

如何在Python中將DateTime轉換為整數? 如何在Python中將DateTime轉換為整數? Sep 05, 2023 pm 10:21 PM

日期和時間值的操作是程式設計的一個重要方面,Python語言為此提供了一個有用的內建模組,稱為datetime。但是,在某些情況下,可能需要將DateTime物件轉換為整數值,以便執行特定的操作或計算。在Python中將DateTime轉換為整數有多種方法,每種方法都有自己的優點和缺點。在本文中,我們將深入研究這些方法並檢查每種方法何時適合使用。閱讀本文後,您將全面了解如何在Python中有效地將DateTime物件轉換為整數,並能夠為您的特定程式設計任務選擇最合適的方法。方法一:使用timestamp

javascript怎麼將整數轉為小數 javascript怎麼將整數轉為小數 Nov 03, 2021 pm 05:59 PM

在javascript中,可以利用toFixed()函數來將整數轉為小數,該函數能夠把整數轉換為指定小數位數的數字;語法“number.toFixed(x)”,參數“x”規定小數的位數。

整數的正規表示式有哪些 整數的正規表示式有哪些 Nov 14, 2023 pm 04:11 PM

整數的正規表示式有:1、符合正整數:^[1-9]\d*$;2、符合負整數:^-[1-9]\d*$;3、符合正整數和負整數:^-?\d+$;4、符合非零整數:^(0|[1-9]\d*)$;5、符合整數(含零):^-?\d+$。

Sharepoint安裝SSL憑證? Sharepoint安裝SSL憑證? Feb 19, 2024 am 11:27 AM

在SharePoint上安裝SSL憑證是保護網站安全性和提供加密連線的關鍵步驟。透過遵循正確的安裝步驟,您可以確保網站資料的安全性,並提昇在搜尋引擎中的排名,為訪客提供更好的使用者體驗。取得SSL憑證聯絡可信任的憑證授權單位(CA)購買SSL憑證。提供所需的身份驗證和網域名稱所有權驗證資訊。完成驗證流程後,您將收到SSL憑證檔案。準備憑證檔案使用文字編輯器開啟您的SSL憑證檔案。將證書內容複製到一個新的文字檔案中。將該檔案儲存為yourdomain.cer,確保將」yourdomain&#8221

使用C++編寫程式碼,找到第N個非平方數 使用C++編寫程式碼,找到第N個非平方數 Aug 30, 2023 pm 10:41 PM

我們都知道不是任何數字的平方的數字,如2、3、5、7、8等。非平方數有N個,不可能知道每個數字。因此,在本文中,我們將解釋有關無平方數或非平方數的所有內容,以及在C++中尋找第N個非平方數的方法。第N個非平方數如果一個數是整數的平方,則該數稱為完全平方數。完全平方數的一些例子是-1issquareof14issquareof29issquareof316issquareof425issquareof5如果一個數不是任何整數的平方,則該數稱為非平方數。例如,前15個非平方數是-2,3,5,6,

使用C++編寫的陣列右旋轉的反轉演算法 使用C++編寫的陣列右旋轉的反轉演算法 Sep 08, 2023 pm 08:17 PM

在本文中,我們將了解逆轉演算法,將給定的陣列向右旋轉k個元素,例如−Input:arr[]={4,6,2,6,43,7,3,7},k= 4Output:{43,7,3,7,4,6​​,2,6}Explanation:Rotatingeachelementofarrayby4-elementtotherightgives{43,7,3,7,4,6​​,2,6}.Input:arr[]={8 ,5,8,2,1,4,9,3},k=3Output:{4,9,3,8,5,8,2,1}尋找解的方

在C編程中,求圓的面積 在C編程中,求圓的面積 Aug 25, 2023 pm 10:57 PM

圓是封閉圖形。圓上的所有點到圓內一點的距離都相等。中心點稱為圓心。點到圓心的距離稱為半徑。面積是封閉圖形尺寸跨距的定量表示。圓的面積是圓的尺寸內所包圍的面積。計算圓面積的公式,Area=π*r*r為了計算面積,我們給出了圓的半徑作為輸入,我們將使用公式來計算面積,算法STEP1:Takeradiusasinputfromtheuserusingstdinput.STEP2:Calculatetheareaofcircleusing,  area=(

See all articles