C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++で奇数および偶数であるNの回転をカウントします


数Nが与えられます。目標は、奇数を作るNの回転と、偶数を作る回転を数えることです。数Nが123の場合、その回転は123、321、132になります。奇数の回転は123と321(2)で、偶数の回転は132(1)です。

例を挙げて理解しましょう。

入力 − n =54762

出力

奇数であるNの回転数は− 2

偶数であるNの回転数は− 3

説明 −回転は−

54762、25476、62547、76254、47625。

回転も3− 54762、25476、76254

奇数回転は2− 62547、47625

入力 − n =3571

出力

奇数であるNの回転数は-4です

偶数であるNの回転数は− 0

説明 −回転は−

3571、1357、7135、5713

回転も0−

奇数回転は4− 3571、1357、7135、5713

以下のプログラムで使用されているアプローチは次のとおりです

奇数または偶数は、奇数/偶数として単位桁を使用して確認できます。数値の回転中は、すべての桁が単位桁になります。そこで、数値を10で割り、単位の桁が偶数/奇数かどうかを確認し、それぞれのカウントを増やします。

  • 数値を整数Nとします。

  • 関数Even_Odd_rotation(int N)は、数値Nを取り、奇数回転と偶数回転のカウントを出力します。

  • 初期カウントをEven_rotationおよびOdd_rotationとします。

  • do-whileループを使用すると、単位桁にvalue =N%10が使用されます。

  • 値%2 ==0の場合は、Even_rotationをインクリメントし、それ以外の場合はOdd_rotationをインクリメントします

  • 次の単位桁のNを10減らします。

  • Even_rotationを偶数のNの回転として出力します。

  • Odd_rotationを偶数のNの回転として出力します。

#include <bits/stdc++.h>
using namespace std;
void Even_Odd_rotation(int N){
   int Even_rotation = 0;
   int Odd_rotation = 0;
   do{
      int value = N % 10;
      if(value % 2 == 1)
         { Odd_rotation++; }
      else
         { Even_rotation++; }
      N = N / 10;
   } while(N != 0);
   cout<<"Count of rotations of N which are Odd are: "<<Odd_rotation;
   cout<<"\nCount of rotations of N which are Even are: "<<Even_rotation;
}
int main(){
   int N = 341;
   Even_Odd_rotation(N);
   return 0;
}

出力

上記のコードを実行すると、次の出力が生成されます-

Count of rotations of N which are Odd are: 2
Count of rotations of N which are Even are: 1

  1. C++で4で割り切れる回転をカウントします

    たくさん与えられます。目標は、4で割り切れるnumの回転をカウントすることです。 回転は何度も行うことができないので。 4で割り切れるプロパティを使用します。最後の2桁が4で割り切れる場合、数値は4で割り切れます。数値が1234の場合、回転は1234、4123、3412、2341になり、最後の2桁の12は4で割り切れます。 4で割り切れる。 例を挙げて理解しましょう。 入力 − num =15324 出力 −4で割り切れる回転数は次のとおりです。2 説明 −回転は− 15324, 41532, 24153, 32415, 53241 これらのうち、15324と41532は4で割

  2. C++でソートおよびローテーションされたリンクリストのローテーションをカウントします

    リンクリストが表示されます。リストは最初にソートされ、次にK個のノードでローテーションされます。目標は、Kの値を見つけることです。K個のノードだけ回転する入力としてリンクリストを以下に示す場合- それならオリジナルは-だったに違いない ここでKは2であることがわかります。入力リンクリストは、元のソートされたリンクリストの2ノードのローテーションです。 例を挙げて理解しましょう。 入力 −リスト:5→7→9→1→3 出力 リンクリストの要素は次のとおりです。5791 3 ソートおよびローテーションされたリンクリストのローテーション数は-3 説明 −元のソート済み