国产探花免费观看_亚洲丰满少妇自慰呻吟_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;}這個方法就是找到了元素輸出的規律,然后代碼實現之。

《算法筆記》購買地址。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沾化县| 镇原县| 岑溪市| 林甸县| 响水县| 江城| 获嘉县| 洛隆县| 墨玉县| 贺兰县| 萨嘎县| 屏南县| 富平县| 繁峙县| 申扎县| 闸北区| 布尔津县| 东方市| 康保县| 河南省| 波密县| 象州县| 民乐县| 秦皇岛市| 嵊泗县| 鹤壁市| 松江区| 临猗县| 六枝特区| 潮州市| 烟台市| 建昌县| 区。| 临汾市| 缙云县| 孝感市| 乃东县| 乌兰县| 阿瓦提县| 越西县| 高要市|