PAT (Basic Level) Practise (中文)1008. 陣列元素迴圈右移問題 (20)
一個數組A中存有N(N>0)個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移M(M>=0)個位置,即將A中的資料由(A0A1……AN-1)變換為(AN-M …… AN-1 A0 A1……AN-M-1)(最後M個數迴圈移至最前面的M個位置)。如果需要考慮程式移動資料的次數儘量少,要如何設計移動的方法?
輸入格式:每個輸入包含一個測試用例,第1行輸入N ( 1<=N<=100)、M(M>=0);第2行輸入N個整數,之間用空格分隔。
輸出格式:在一行中輸出迴圈右移M位以後的整數序列,之間用空格分隔,序列結尾不能有多餘空格。
輸入樣例:6 2 1 2 3 4 5 6
5 6 1 2 3 4
相關推薦
PAT (Basic Level) Practise (中文)1008. 陣列元素迴圈右移問題 (20)
一個數組A中存有N(N>0)個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移M(M>=0)個位置,即將A中的資料由(A0A1……AN-1)變換為(AN-M …… AN-1 A0 A1……AN-M-1)(最後M個數迴圈移至最前面的M個位置)。如果需要考慮程式移動資料的次數儘量少,要如何
PAT (Basic Level) Practice (中文)1008 陣列元素迴圈右移問題
1008 陣列元素迴圈右移問題 一個數組A中存有N(N>0)個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移M(M>=0)個位置,即將A中的資料由(A~0~ A~1~……A~N-1~)變換為(A~N-M~ …… A~N-1~ A~0
PAT (Basic Level) Practice (中文) 1008 陣列元素迴圈右移問題 (20 分) (C++)
1008 陣列元素迴圈右移問題 (20 分) 一個數組A中存有N(>0)個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移M(≥0)個位置,即將A中的資料由(A 0 A 1 ⋯A N−1 )變換為(A N−M ⋯A N−1 A
PAT(乙級)1008. 陣列元素迴圈右移問題
一個數組A中存有N(N>0)個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移M(M>=0)個位置,即將A中的資料由(A0 A1……AN-1)變換為(AN-M …… AN-1 A0A1……AN-M-1)(最後M個數迴圈移至最前面的M個位置)。如果需要考
PAT乙級真題及訓練集 PAT (Basic Level) Practise (中文)1014. 福爾摩斯的約會
大偵探福爾摩斯接到一張奇怪的字條:“我們約會吧!3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大偵探很快就明白了,字條上奇怪的亂碼實際上就是約會的時間“星期四 14:04”,因為前面兩字串中第1對相同的大寫英
PAT乙級真題及訓練集 PAT (Basic Level) Practise (中文)1013. 數素數
令Pi表示第i個素數。現任給兩個正整數M <= N <= 104,請輸出PM到PN的所有素數。 輸入格式: 輸入在一行中給出M和N,其間以空格分隔。 輸出格式: 輸出從PM到PN的所有素數,每10個數字佔1行,其間以空格分隔,但行末不得有多餘空格。
PAT乙級真題及訓練集 PAT (Basic Level) Practise (中文)1012. 數字分類
給定一系列正整數,請按要求對數字進行分類,並輸出以下5個數字:A1 = 能被5整除的數字中所有偶數的和;A2 = 將被5除後餘1的數字按給出順序進行交錯求和,即計算n1-n2+n3-n4...;A3 = 被5除後餘2的數字的個數;A4 = 被5除後餘3的數字的平均數,精確到小數點後1位;
PAT乙級真題及訓練集 PAT (Basic Level) Practise (中文)1011. A+B和C
給定區間[-231, 231]內的3個整數A、B和C,請判斷A+B是否大於C。 輸入格式: 輸入第1行給出正整數T(<=10),是測試用例的個數。隨後給出T組測試用例,每組佔一行,順序給出A、B和C。整數間以空格分隔。 輸出格式: 對每組測試用例,在一行中
PAT乙級真題及訓練集 PAT (Basic Level) Practise (中文)1010. 一元多項式求導
設計函式求一元多項式的導數。(注:xn(n為整數)的一階導數為n*xn-1。) 輸入格式:以指數遞降方式輸入多項式非零項係數和指數(絕對值均為不超過1000的整數)。數字間以空格分隔。 輸出格式:以與輸入相同的格式輸出導數多項式非零項的係數和指數。數字間以空格分隔,但結尾不能有多
PAT (Basic Level) Practise (中文)練習(Java語言組)
1001. 害死人不償命的(3n+1)猜想 (15/15) 卡拉茲(Callatz)猜想: 對任何一個自然數n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把(3n+1)砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到n=1。卡拉茲在1950年的世界數學家大會上公
PAT乙級真題全集-PAT (Basic Level) Practise (中文)
1001. 害死人不償命的(3n+1)猜想 (15) 卡拉茲(Callatz)猜想: 對任何一個自然數n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把(3n+1)砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到n=1。卡拉茲在1950年的世界數學家大會上公佈了這
PAT (Basic Level) Practise (中文) 1025. 反轉連結串列 (25)
1025. 反轉連結串列 (25) 時間限制 300 ms 記憶體限制 65536 kB 程式碼長度限制 8000 B 判題程式 Standard 作者 CHEN, Yue 給定一個常數K以及一個單鏈表L,請編寫程式將L中每K個結點反轉。
PAT (Basic Level) Practise (中文)1002. 寫出這個數 (20)
讀入一個自然數n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。 輸入格式:每個測試輸入包含1個測試用例,即給出自然數n的值。這裡保證n小於10100。 輸出格式:在一行內輸出n的各位數字之和的每一位,拼音數字間有1 空格,但一行中最後一個拼音數字後沒有空格。 輸入樣例: 123456789098
PAT (Basic Level) Practise (中文)1015. 德才論(3種方法)
宋代史學家司馬光在《資治通鑑》中有一段著名的“德才論”:“是故才德全盡謂之聖人,才德兼亡謂之愚人,德勝才謂之君子,才勝德謂之小人。凡取人之術,苟不得聖人,君子而與之,與其得小人,不若得愚人。” 現給出一批考生的德才分數,請根據司馬光的理論給出錄取排名。 輸入格式: 輸入第1行給出3個正整數,分別為:
PAT (Basic Level) Practise (中文)1026. 程式執行時間
要獲得一個C語言程式的執行時間,常用的方法是呼叫標頭檔案time.h,其中提供了clock()函式,可以捕捉從程式開始執行到clock()被呼叫時所耗費的時間。這個時間單位是clock tick,即“時鐘打點”。同時還有一個常數CLK_TCK,給出了機器時鐘每秒所走的時鐘
PAT (Basic Level) Practise (中文) 1077. 互評成績計算 (20)
在浙大的計算機專業課中,經常有互評分組報告這個環節。一個組上臺介紹自己的工作,其他組在臺下為其表現評分。最後這個組的互評成績是這樣計算的:所有其他組的評分中,去掉一個最高分和一個最低分,剩下的分數取平均分記為 G1;老師給這個組的評分記為 G2。該組得分為 (G1+G2)/2,最後結果四捨五入後保留整數分
PAT (Basic Level) Practise (中文)1025. 反轉連結串列 (25)
給定一個常數K以及一個單鏈表L,請編寫程式將L中每K個結點反轉。例如:給定L為1→2→3→4→5→6,K為3,則輸出應該為3→2→1→6→5→4;如果K為4,則輸出應該為4→3→2→1→5→6,即最後不到K個元素不反轉。 輸入格式: 每個輸入包含1個測試用例。每個測試用例第1行給出第1個結點的地址、結
(PAT乙級)1008 陣列元素迴圈右移問題(C語言實現)
總結:1、思路:定義陣列空間時大一些,將前(N-M)個數移到N個數後。即利用本陣列多餘的空間來儲存數字,也相當於構建了 另一個數組的作用。 2、坑點:不要想當然地認為N>M,所以在M>N時需要對M進行處
PAT (Basic Level) Practice (中文)1001
1001 害死人不償命的(3n+1)猜想 (15 分) 卡拉茲(Callatz)猜想: 對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反
PAT (Basic Level) Practice (中文)1002
pla flow ati soft ali 輸出 pan 自然數 include 1002 寫出這個數 (20 分) 讀入一個正整數 n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。 輸入格式: 每個測試輸入包含 1 個測試用例,即給出自然數 n 的值。這裏保證