看板 b97902HW 關於我們 聯絡資訊
[Finished 歡迎大家一起來問問題or討論唷>.^] B97902006 anfranion B97902037 ming1053 B97902044 telgniw B97902112 averangeall B97902113 sa072686 B97902114 rewqrewwq B97902115 godgunman B97902116 drazi [提供資訊] 1. 變數名稱之類的可能有數字 2. 排序可以使用O(n^2)的 3. 陣列開不夠大可能會9分 4. 變數followed by \n也要注意 有幾個特別的地方想講一下,所以要放這個′▽`) **********************防雷分隔線************************ 1. 簡而言之,題目到底是什麼? 不要像我一樣複雜化問題了(就這樣吃了N次零分囧),這題簡而言之就是 找出連續的_、A~Z、a~z,以及0~9(但是不可以在字首) 然後紀錄所在行數(同時要注意在同一行出現的情形) 以及最後按照字典順序(也就是ascii碼的大小順序)輸出 (Ex : i, j, io, hello, h0, h1按照字典順序排完是h0, h1, hello, i, io, j) 2. 輸出時按照字典順序? 要做到這點有兩個辦法,第一個是排序 第二個則是不要排序,直接每次都找最小的輸出 排序的話會比較麻煩,但是可以有技巧地利用「索引」來排序。 所謂的索引呢,就是排序時比較的對應編號的內容,但是移動的是索引陣列 比如說剛剛那個用索引編號: 1: i 2: j 3: io 4: hello 5: h0 對應關係做好了之後 在比較的時候,我們移動的就是索引,但是還是比較字串的字典順序 (可以利用strcmp(字串1, 字串2);) 剛剛那個排完了之後,會得到這樣的索引陣列: 5 4 1 3 2 這樣我就知道 編號五的要第一個印出 所以是h0 編號4的第二,所以是hello 以此類推 如果這部分看不懂的話也沒關係,每次去找最小的印也是一個很好的辦法;) 大致就是這樣 歡迎大家一起討論唷′▽`) ********************************************** 我終於懂文末防雷頁是幹嘛的了XD -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.50.107 ※ 編輯: anfranion 來自: 122.116.50.107 (10/29 01:41)
ming1053:XDD 然後還有搶頭香的蜥蜴 10/29 01:42
dreamoon:希望若有人九分變十分說一下有什麼該注意的地方 10/29 01:54
dreamoon:(若是砍掉重練就不需要了) 10/29 01:55
MacacaXDrz:我還在9分中orz 10/29 01:57
dh3014:似乎 io 要在 j 的前面? 10/29 01:58
dh3014:喔,會錯意了 沒事XD 10/29 01:58
sa072686:文末防雷是防看推文也中槍或是直接end也中槍的XD 10/29 02:01
sa072686:四樓的9分是錯在陣列不夠大,大家檢查一下吧 10/29 02:26
MacacaXDrz:Q︿Q,我的6個9分orz 10/29 02:27
sa072686:最多有1000行,不同於變數名和單行長度的100,大家小心喔 10/29 02:27
sa072686:就是說某變數每行都出現,則可能有1000個數字的意思 10/29 02:27
ming1053:我和Macaca都爆過樓上這個= = 全開1010就不用擔心啦 10/29 02:27
sa072686:這應該不算心機XD 二樓要不要檢查一下? 10/29 02:33
dreamoon:對了~我的九分是爆在變數 is followed by '\n'時會出問題 10/29 02:34
※ 編輯: anfranion 來自: 122.116.50.107 (10/29 02:40) ※ 編輯: anfranion 來自: 122.116.50.107 (10/29 02:40)
sa072686:本來想推蜥蜴繼斷尾後又被腰斬XDDD 10/29 02:41
telgniw:1000個數字QQ 10/29 09:03
telgniw:害我弄到一點才放棄 10/29 09:04
benck:10個人AC了= =" 天啊 10/29 09:21
※ 編輯: anfranion 來自: 140.112.30.134 (10/29 15:53)
averangeall:不好意思 我想問個問題 10/29 17:28
averangeall:就是說 一般我們都寫 k = i + j; 10/29 17:28
averangeall:測資裡有可能會有 k=i+j; 嗎 10/29 17:28
telgniw:也有很多人是寫k=i+j;吧 10/29 17:39
telgniw:對了我想問正常程式碼什麼時候會出現變數followed by '\n' 10/29 17:41
LoganChien:B97902073 簡子翔完成。 10/29 17:54
LoganChien:To 樓上上,分號寫在下一行的時候。 10/29 17:56
LoganChien:不過這樣算不算正常的程式碼就... 見人見智了... 10/29 18:03
averangeall:再請問一下 出現像是 printf 之類 要印嗎 10/29 18:06
LoganChien:printf 要吧。至少我的程式會算&印。 10/29 18:10
averangeall:謝謝 10/29 18:10
averangeall:再請問一下 NULL 也要印嗎 10/29 18:25
drazi:變數followed by '\n'會在呼叫一個1x個參數的function 10/29 18:27
drazi:看到 這時通常會一個變數擺一行 10/29 18:27
sa072686:這樣通常是followed by ','吧? 10/29 19:19
drazi:sa你好怪...... , 通常是放前面喔~ 10/29 20:49
telgniw:咦我也是followed by ','耶 10/29 21:24
drazi:囧那是我怪XDDDD 10/29 21:26
rewqrewwq:我也是followed by ','耶 10/29 21:49
ckclark:NULL是在stdio裡面定義的 非保留字 10/29 21:51
ckclark:更正 libio.h 10/29 21:53
LoganChien:stdlib.h ? 10/29 21:55
ckclark:看機器吧 總之他不是保留字 10/29 22:07
LoganChien:(我少見多怪 =_=q) 補:測資的保留字只有題目列出的。 10/29 22:23
dh3014:應該說 你只要忽略題目列出的保留字,其他符合syntax都要印 10/29 22:26
averangeall:是 謝謝回答 10/29 22:34
xflash96:follow by none...全用strtok的割分字串切掉了... 10/29 22:40
averangeall:真開心 忙了半天 112林自均AC了 謝謝強者們 10/29 23:08
※ 編輯: anfranion 來自: 122.116.50.107 (10/29 23:51) ※ 編輯: anfranion 來自: 122.116.50.107 (10/29 23:53)