【2019.3.28】
這道題沒改直接ac!skr
感覺有點「自頂向下」的感覺了,沒有看書上的解法,但寫出來是差不多的
跟書上一樣用了二維陣列,比書上少寫了兩個子函式,用時更久
所用資料結構:二維陣列,編碼方式大概如下:
000 01 10
000 001 010 011 100 101 110
我的解法:
對於01串:用getnchar子函式來讀入n個字元,在這個子函式內部實現「跳過換行符」
對於編碼頭:在main函式裡呼叫getline函式一次讀入一行,先存入string裡,再存入二維陣列裡
書上的解法:
對於編碼頭:用readcodes子函式讀入,直接存入二維陣列
readint子函式用於讀取n個字元
readchar子函式用於讀取乙個不是』\n』和』\t』的字元
#include
#include
#include
#include
using
namespace std;
char header[8]
[130];
string s;
intgetnchar
(int n)
while
(c==
'\n');
num*=2
; num+
=(c-
'0');}
return num;
}int
main()
}//輸入01序列
int num;
while
(true
)//輸入剩下的位
int col;
while
(true)}
cout<}return0;
}
劉汝佳書 例題4 5 UVA512
2019.3.29 讀了書上的 1 模擬法 思想 二維陣列d中存放每個格仔的原始序號 i 10000 j 如 10001代表這個格仔最開始在1行1列 20003代表這個格仔最開始在2行3列 因此,二維陣列d的初值如下 10001 10002 10003 20001 20002 20003 30001...
UVA1388(劉汝佳白書例題)
uva1388 題意 乙個周長為10000的圓上均勻分布n個雕塑,現在再插入m個雕塑,希望n m個雕塑也能在這個圓上均勻分布。可能需要移動原有的一些雕塑。問 n個雕塑最小移動的總距離是多少。思路 首先需要找到原有的n個雕塑在插入m個雕塑後,它們每個的位置。n個雕塑的移動選乙個參考點,這個參考點是不動...
劉汝佳書 習題3 4 UVA455
uva刷題方法 2019.3.24 這道題注意pe錯誤 最後乙個輸出後沒有換行 貌似最後多了換行是wa錯誤,懵逼 三層迴圈 最外層迴圈是 i從1到strlen s 第二層迴圈是 j從第0個週期的第1個數字到第0個週期的最後乙個數字 最內層迴圈是 k從第0個週期到最後乙個週期 思路是 遍歷每一種週期數...