目前分類:ACM-UVA-難度1 (38)

瀏覽方式: 標題列表 簡短摘要

計算圖中的三塊圖形面積

[心得]

1.邊長最大10000,還需要平方,所以要宣告成 double

2.以正方型的一半來看,找出直角三角形和扇形就可以求出 z 的一半的面積

RingsACM 發表在 痞客邦 留言(0) 人氣()

對各家公司所開的價進行比價,取能提供最多服務、或服務數目相同但價格最便宜的公司

[心得]

1.scanf() 使用時要小心,當讀取兩個數之後還有\n,如果再加上 gets(input) 讀取時讀到的不是下一行: 要重複 gets(input),或是 scanf() 中包含\n

2.複製字串使用 strcpy(new,original)

3.每次迴圈重來時,記得把一些值歸零

RingsACM 發表在 痞客邦 留言(0) 人氣()

計算每次輸入一個數之後,新的中位數是多少

[心得]

1.排序用 insertion sort,往前插入到適當的位置 (因為前面都已經排序完成)

RingsACM 發表在 痞客邦 留言(0) 人氣()

將輸入字串中的字對應到鍵盤,輸出它左邊一格的字

[心得]

1.右斜線(\)和單引號(')在判斷時前面記得再加一個右斜線

2.記得加終止條件EOF

RingsACM 發表在 痞客邦 留言(0) 人氣()

給定 T 秒後的速度 V,求 2T 時間後行走的距離

[心得]

1.第一次一次就 AC Q_Q

RingsACM 發表在 痞客邦 留言(0) 人氣()

輸入一串字串,由小到大輸出各字元出現的頻率,若相同則ASCII大者放前面

[心得]

1.思考很亂,最後參考sagit大的想法,若出現過則break,沒出現則新增

2.掃過一次之後再檢查頻率,若小於前面出現過的字元或相等但ASCII較大則交換位置

2. if(cnt>0) printf("\n"); 擺放的位置超怪,沒想到要這樣才能過,卡題了很久 = ="

RingsACM 發表在 痞客邦 留言(0) 人氣()

計算兩數之差

[心得]

1.不超過2的32次方是陷阱,要使用 long long int

2.小心 fabs 不吃 lld,要自己寫

RingsACM 發表在 痞客邦 留言(0) 人氣()

Jolly之判斷 : 代表N個數字,相鄰數字之差絕對值範圍介於1~N-1

[心得]

1.使用 abs() 其實要 include <stdlib.h>

2.將範圍定為一個陣列,判斷陣列中的值是否完全更動為1即可

RingsACM 發表在 痞客邦 留言(1) 人氣()

計算兩數相加共有幾次進位

[心得]

1.迴圈裡要記得初始 carry=0

RingsACM 發表在 痞客邦 留言(0) 人氣()

計算一個數加上reverse之後的數,這個步驟要重覆幾次,才會使最後的數是迴文

[心得]

1.中文題目有限制最多100個測資,但是ACM網站改版後拿掉這段了 OTL

2.reverse的方法

3.數據表示範圍,int:-2147483648~2147489647

                          unsigned (int):0~4294967295

RingsACM 發表在 痞客邦 留言(0) 人氣()

依照 Joana 的奇數遊戲,輸入的 N 代表該列有 N 個奇數,求最後三個奇數之和

[心得]

1.1<N<1000000000,要使用 long long int

2.%d 也要改成 %lld

RingsACM 發表在 痞客邦 留言(0) 人氣()

一堆不同高低的積木,計算將每一個 stack 的高度調整到相同高度所需的積木移動數目

[心得]

1.選擇語言為 ANSI C 時,註解不要用雙斜線

2.輸出字串要打對,是moves不是move (好蠢QQ)

RingsACM 發表在 痞客邦 留言(0) 人氣()

給定電子鐘格式的時間,計算時鐘中時針和秒針的角度

[心得]

1.直接 scanf("%d:%d",&h,&m) 即可,不需要分兩次讀

2.因為是 float,除數的 60 要寫成 60.0

3.include <math.h> 可以使用 fabs(),計算 float 的絕對值

4.如果要判定兩個 float 值是否相等,可以使用 fab()<EPS

RingsACM 發表在 痞客邦 留言(0) 人氣()

計算字串中有幾個word

[心得]

1.include <ctype.h> 可以使用 isalpha() 來判斷是不是字母

RingsACM 發表在 痞客邦 留言(0) 人氣()

輸入波的振幅和頻率,輸出波形

[心得]

1.注意輸出格式,這題要求每個波的中間要空一行,但是最後一個波的後面不用

RingsACM 發表在 痞客邦 留言(0) 人氣()

判斷點是否在某矩形中

[心得]

1.由於座標是 float 形式,不能用"等於"來判斷結束條件 9999.9

2.不能偷懶連續判斷"小於",要分開寫

RingsACM 發表在 痞客邦 留言(0) 人氣()

解碼,加密方式是將 ASCII 加減某個固定的數值

[心得]

1.另一種重覆抓取字串方式,while(scanf("%s",text)!=EOF)

RingsACM 發表在 痞客邦 留言(0) 人氣()

將文章中成對的雙引號加上方向性

[心得]

1. 不要用system("PAUSE")

2.輸入一整句,使用gets(text)

3.計算string長度,使用strlen(text)

RingsACM 發表在 痞客邦 留言(1) 人氣()

«12