二、兩數之和
三、金幣
總結
給出n(1≤n≤13),請輸出乙個直角邊長度是 n 的數字直角三角形。所有數字都是 2 位組成的,如果沒有 2 位則加上前加 0。
輸入:看到輸出的結果後,我首先想到的就是以前寫過的那個數字金字塔,很顯然需要兩個for語句迴圈巢狀,每一行少乙個值,再使用if語句使得個位數前面加上0就可以了。5輸出:
0102030405
06070809
101112
1314
15
#include
intmain()
m--;/* 每一行都少一列 */
printf
("\n");
/* 換行 */
}return0;
}
給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,陣列中同乙個元素不能使用兩遍。
給定 nums = [2, 7, 11, 15], target = 9看到題的第一眼還是有些懵,看了一會後就想到了乙個比較笨的辦法,就是兩個迴圈巢狀語句,乙個乙個的試,直到找到對應的答案。因為 nums[0] + nums[1] = 2 + 7 = 9
所以輸出:
[0, 1]
#include
intmain()
;/* 給定的整數陣列 */
int target =9;
/* 給定的目標值 */
int i, j;
for(i=
0;i<
4;i++
)for
(j = i+
1; j <
4; j++
) end:
printf
("[%d,%d]"
, i, j)
;return0;
}
國王將金幣作為工資,發放給忠誠的騎士。第一天,騎士收到一枚金幣;之後兩天(第二天和第三天),每天收到兩枚金幣;之後三天(第四、五、六天),每天收到三枚金幣;之後四天(第
七、八、九、十天),每天收到四枚金幣……;這種工資發放模式會一直這樣延續下去:當連續n天每天收到n枚金幣後,騎士會在之後的連續n+1
n+1天裡,每天收到n+1枚金幣。
請計算在前k天裡,騎士一共獲得了多少金幣。
輸入:這是一道很經典的題,看到題的時候就有一股似曾相識的感覺。首先理解題意,第一天得到1個金幣,第二天和第三天各得到2個金幣,第6輸出:
14輸入:
1000
輸出:29820
四、五、六天每天得到3個金幣,以此類推······如果為3天,就是1 * 1+2 * 2,6天就是1 * 1+2 * 2+ 3* 3,那麼10天就是1 * 1+2 * 2+ 3* 3+4 * 4了,對於不是1,3,6,10等這種的時候,我們只需要減去多餘天數就可以了。所以很明顯需要乙個迴圈語句。
#include
intmain()
sum +
= n *
(i -1)
;/* 減去多得到的金幣(n此時為負數,i已經自加過,所以-1)*/
printf
("%d"
, sum)
;return0;
}
上面的三道題都考察了迴圈語句的使用,也是相對其他題來說算是簡單的題了,只要認真仔細想一想,總會有思路的。加油!? 洛谷題型摘選(四)
二 p1002 過河卒 動態規劃 先在各大 oj 上有 n 個比賽,每個比賽的開始 結束的時間點是知道的。所以,想知道最多能參加幾個比賽。如果要參加乙個比賽必須善始善終,而且不能同時參加 2 個及以上的比賽。第一行是乙個整數 n 接下來 n 行每行是 2 個整數,表示比賽開始 結束的時間。乙個整數,...
關卡一 洛谷比賽
lj終於弄懂了任務,他需要闖過九九八十一個關卡,才能拿到鑰匙,回到主世界。為了早日回家,lj踏入了第一關。這是乙個由方塊構成的世界,連lj都被方塊化了 mc?構成這個世界的方塊只有兩種,泥土方塊和柵欄方塊。由於這是第一關,管理員為了減少難度,將三維世界抽象成二維世界,並派遣npc ljy去告訴lj,...
洛谷 桌球
國際乒聯現在主席沙拉拉自從上任以來就立志於推行一系列改革,以推動桌球運動在全球的普及。其中111111分制改革引起了很大的爭議,有一部分球員因為無法適應新規則只能選擇退役。華華就是其中一位,他退役之後走上了桌球研究工作,意圖弄明白111111分制和212121分制對選手的不同影響。在開展他的研究之前...