国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

PAT-B 1008. 數組元素循環右移問題 (20)

2019-11-10 17:30:57
字體:
來源:轉載
供稿:網友

題目鏈接在此。

雖然這個題目在題干中有非常多的限制,“不允許有額外數組”、“移動次數最少”等等,但是PAT是一個黑盒測試,只需要結果正確,能過通過所有測試點即可。所以不需要被這些限制所限制,這里只寫出兩種方法, 一種是我自己的想法,用了“簡單模擬”的思想,即題目說“數組右移”,那么我就數組右移,故這種方法的關鍵就在如何右移數組;另外一種方法是《算法筆記》中的,這種方法更加直接,直接按照一定的規律輸出,甚是巧妙。

下面是我的代碼:

#include<stdio.h>int main(){ int N,M; int a[105]; scanf("%d %d",&N, &M); M = M % N; //題目并沒有保證M<N for( int i = 0 ; i < N; i++){ scanf("%d",a+i); } if(M == 0){ for(int i = 0 ; i < N; i++){ if( i == N-1){ 下面是《算法筆記》的代碼:

#include<stdio.h>int main(){ int N,M; int a[105]; scanf("%d %d",&N,&M); M = M % N; for(int i = 0 ; i < N; i++){ scanf("%d",a+i); } int count = 0; //用來計數,為"最后一個元素不輸出空格服務" for(int i = N-M; i < N; i++){ count++; printf("%d",a[i]); if(count < N){ printf(" "); } } for(int i = 0 ; i < N-M; i++){ count++; printf("%d",a[i]); if(count < N){ printf(" "); } } return 0;}這個方法就是找到了元素輸出的規律,然后代碼實現之。

《算法筆記》購買地址。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赤水市| 博罗县| 三河市| 德令哈市| 宁南县| 泸水县| 加查县| 商丘市| 调兵山市| 呈贡县| 乌兰察布市| 驻马店市| 左权县| 广南县| 黄龙县| 筠连县| 花垣县| 封丘县| 临猗县| 内乡县| 九寨沟县| 遂昌县| 孝义市| 鹤峰县| 沈阳市| 龙川县| 晴隆县| 梁山县| 确山县| 炉霍县| 增城市| 慈利县| 宝清县| 赣州市| 通山县| 镇原县| 汾西县| 西乌珠穆沁旗| 娄烦县| 青州市| 尉氏县|