C++中圓上對徑位置的人


在這個問題中,我們給定兩個整數N和M。有一個圓圈,N個人站在上面。M表示一個人的位置。我們的任務是列印與M相對的人的位置。

讓我們來看一個例子來理解這個問題:

輸入 - N = 6, M = 3

輸出 - 6

解釋 -

為了解決這個問題,將有兩種情況:一種情況是位置大於位置的一半(後半部分),相對位置將是前半部分,反之亦然。

讓我們用數學公式來表示:

情況1 - 如果 m > n/2,則對面人的位置為 m - (n/2)

情況2 - 如果 m <= n/2,則對面人的位置為 m + (n/2)

示例

程式演示我們的解決方案:

 線上演示

#include <iostream>
using namespace std;
void printOppositePosition(int n, int m) {
   int pos;
   if (m > (n / 2))
      pos = (m - (n / 2));
   else
      pos = (m + (n / 2));
   cout<<pos;
}
int main() {
   int N = 8, M = 4;
   cout<<"The position of person opposite to person at position "<<M<<" when "<<N<<" people are standing in a circle is ";
   printOppositePosition(N, M);
   return 0;
}

輸出

The position of person opposite to person at position 4 when 8 people are standing in a circle is 8

更新於:2020年4月17日

139 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.