C C 演算法筆記 10 B1008

2021-09-26 22:44:40 字數 725 閱讀 4317

題目描述

乙個陣列a中存有n(>0)個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移m(≥0)個位置,即將a中的資料由(a​0​​a​1​​⋯a​n−1​​)變換為(a​n−m​​⋯a​n−1​​a​0​​a​1​​⋯a​n−m−1​​)(最後m個數迴圈移至最前面的m個位置)。如果需要考慮程式移動資料的次數盡量少,要如何設計移動的方法?

輸入格式

每個輸入包含乙個測試用例,第1行輸入n(1≤n≤100)和m(≥0);第2行輸入n個整數,之間用空格分隔。

輸出格式

在一行中輸出迴圈右移m位以後的整數序列,之間用空格分隔,序列結尾不能有多餘空格。

輸入樣例

6 2

1 2 3 4 5 6

輸出樣例

5 6 1 2 3 4
這裡我考慮程式移動資料次數最少,是否可以直接在輸入階段就把資料元素放到最終位置上呢,以達到移動次數最少甚至不移動的效果,在簡單寫完後對比書上的參考**,我認為確實有可行性,故貼於此,**比較簡單沒有加注釋。

#includeint main();

for(int i=0;ifor(int i=0;ireturn 0;

}

c c 學習筆記 10

結構是乙個或者多個變數的集合,這些變數可以為不同的型別。ansi標準在結構方面最主要的變化是定義了結構的賦值操作 拷貝 賦值 傳遞給函式 函式返回結構型別的值。結構宣告如下 view code 1 struct point 2 結構也可以跟其他的基本型別宣告一樣,如 view code 1 stru...

《演算法導論》筆記 B樹

演算法 cc c 資料結構 b樹是平衡樹的一種,主要用於操作儲存在磁碟等二級儲存裝置上的大量資料。相比起記憶體 主存 來說,磁碟操作的速度非常慢 慢幾個數量級 所以涉及到儲存在磁碟的資料的時候,儘量減少磁碟的讀取和寫入操作對於提高操作速度是非常重要的。b樹就是針對這個特點進行設計以滿足相應要求的。b...

2023年藍橋杯B組C C 第10題

k倍區間 有n個數的數列 a1,a2,an 定義s i,j ai ai 1 aj i j 如果s i,j 能被正整數 k整除,那麼稱 s i,j 為k 倍區間。測試資料共兩行。第一行為兩個正整數n和 k,第二行為 n個不同的正整數。輸入樣例1 5 21 2 3 4 5 輸入樣例2 5 31 2 3 ...