【HTML 筆記】事件屬性【part 3】
【HTML 筆記】事件屬性【part 3】 Hello Guys,我是 LukeTseng,自從大學放榜後,我就積極不間斷的學習資訊相關的東西,持續地茁壯自己,主要最大的成分還是興趣與熱愛這個學科來支撐的~總之,廢話不多說,本文主要透過網路上的各大免費平台自學,並且整理成一篇筆記以供自己閱讀的同時,也能促進個人的學習軌跡。 事件屬性 這種屬性通常會觸發 javascript 腳本,然後做出一系列的事件。 常用屬性表 屬性 元素 說明 onafterprint body 網頁內容要被列印之後。 onbeforeprint body 網頁內容要被列印之前。 onbeforeunload body 網頁內容尚未載入之前。 onerror audio、body、embed、img、object、script、style、video 元素內容錯誤發生時。 onhashchange body 網頁網址的 hash tag 改變時。 onload body、iframe、img、input、link、script、style 元素內容載入時。 onoffl...
【HTML 筆記】元素、屬性【part 2】
【HTML 筆記】元素、屬性【part 2】 Hello Guys,我是 LukeTseng,自從大學放榜後,我就積極不間斷的學習資訊相關的東西,持續地茁壯自己,主要最大的成分還是興趣與熱愛這個學科來支撐的~總之,廢話不多說,本文主要透過網路上的各大免費平台自學,並且整理成一篇筆記以供自己閱讀的同時,也能促進個人的學習軌跡。 HTML 元素(Elements) HTML 是透過一系列的元素來結構化網頁內容的語言。 每個元素由標籤(tags)所定義,也可能包含了屬性(attributes)來提供額外的功能或訊息。 一個 HTML 元素通常由以下部分所組成: 開始標籤(Opening Tag):以 <標籤名> 的形式表示,如 <p>。 內容(Content):標籤之間的文字、圖片或其他元素,如「<p>這是一段文字</p>」。 結束標籤(Closing Tag):以 </標籤名> 的形式表示,如 </p>。 <p>這是一段文字</p> 表示一個段落元素。 屬性(Attributes)...
【HTML 筆記】從零開始的 HTML【part 1】
【HTML 筆記】從零開始的 HTML【part 1】 Hello Guys,我是 LukeTseng,自從大學放榜後,我就積極不間斷的學習資訊相關的東西,持續地茁壯自己,主要最大的成分還是興趣與熱愛這個學科來支撐的~總之,廢話不多說,本文主要透過網路上的各大免費平台自學,並且整理成一篇筆記以供自己閱讀的同時,也能促進個人的學習軌跡。 HTML 介紹 HTML 是什麼? HTML 的英文全名為 HyperText Markup Language,翻譯成中文就是「超文本標記語言」,簡稱 HTML。 HTML 是用來建構網頁內容與結構的標準語言。需要注意的是:它不是一種程式語言,而是一種標記語言(Markup Language),用來描述網頁上的文字、圖像、連結、表格、表單等內容的結構與意義。 根據 W3Schools、菜鳥教程 列出下列幾點: HTML 代表超文本標記語言 HTML 是建立網頁的標準標記語言 標記語言是一套標記標籤 (markup tag) HTML 描述網頁的結構 HTML 由一系列元素組成 HTML 元素告訴瀏覽器如何顯示內容 HTML 元素標記內容片段,例...
【C++】競程筆記(貪心法則、貪婪演算法)
【C++】競程筆記(貪心法則、貪婪演算法) 程式碼範例參考:NTUCPC Guide,此筆記僅為個人學習用途。 註:本篇筆記是作者本人腦子最燒的一篇。 貪婪演算法(greedy algorithm) 又稱貪心法則,最常見的例子就是排程問題。 貪婪演算法在每一步決策中選擇當前看似最好的選項,其核心在於追求「局部最優解」,而非保證「全局最優解」。 縮短一下句子,貪婪演算法就是每一步選目前最好的就對了。 若一道題目要得到全局最優解,則應該要考慮使用動態規劃(Dynamic Programming)演算法。 對,貪心法就這樣,剩下就是靠做題目去抓感覺,但是貪心法就跟動態規劃一樣鬼,題目可以給你出得很簡單很甜,有時候可以給你難到嚇嚇叫,做個題目想個一天還不一定想得出來(被這些題目蹂躪過的作者表示)。 [Tutorial] 好吃的蛋糕 Source:https://oj.ntucpc.org/problems/97 12345678910111213141516171819202122232425262728#include <iostream>#include <ve...
【C++ 筆記】繼承(Inheritance) - part 22
【C++ 筆記】繼承(Inheritance) - part 22 很感謝你點進來這篇文章。 你好,我並不是什麼 C++、程式語言的專家,所以本文若有些錯誤麻煩請各位鞭大力一點,我極需各位的指正及指導!!本系列文章的性質主要以詼諧的口吻,一派輕鬆的態度自學程式語言,如果你喜歡,麻煩留言說聲文章讚讚吧! OOP 四大特性 首先讓我們複習一下 OOP(物件導向程式設計) 四大特性: 封裝(Encapsulation) 繼承(Inheritance) 多型(Polymorphism) 抽象(Abstraction) 封裝在前面我們已經有學過了,其實就是使用存取修飾子 private 或 protected 來限制資料成員的權限,不被其他程式碼控制。 封裝就跟他的名字一樣,一個被封裝的紙箱,箱子外的人看不見裡面的東西是啥,只有透過打開這個行為(方法)才能進一步看到箱子裡的東西,而這個行為就是限制了外人存取資料成員的權限。 :::success 封裝具體定義:將資料和運算這些資料的方法組合在一個類別(Class)中,並透過存取控制來限制對資料的直接存取。 ::: 封裝主要有以下四種用途...
【C++】競程筆記(數學&程式設計)
【C++】競程筆記(數學&程式設計) 程式碼範例參考:NTUCPC Guide,此筆記僅為個人學習用途。 質數(prime numbers)與因數(factor) 因數定義:「 $y$ 是 $x$ 的因數代表 $x$ 除以 $y$ 為整數」。 在程式設計上則以 x % y == 0 表示。 123456// from NTUCPC Guidefor (int y = 1; y <= x; y++) { if (x % y == 0) { // y 是 x 的因數 }} 這樣 for 迴圈的遍歷方式,時間複雜度為 $O(x)$ ,因為有 x 個元素要判斷。 而在我們正常尋找因數的方法,如下: $12 = 1 \times 12 = 2 \times 6 = 3 \times 4 = 4 \times 3 = 6 \times 2 = 12 \times 1$ 可以發現,當因數 $>3$ 時,後面的因數與前面完全一致,我們到 $3$ 的時候就不會繼續找因數了。 為了要優化上面的代碼,所以可以透過這...
【C++】競程筆記(搜尋演算法、習題練習)
【C++】競程筆記(搜尋演算法、習題練習) 程式碼範例參考:NTUCPC Guide,此筆記僅為個人學習用途。 線性搜尋法(linear search) 時間複雜度為 $O(N)$ ,就是用 for 迴圈遍歷得出的結果,如下: 1234567891011121314151617#include <iostream>#include <vector>using namespace std;int main(){ vector <int> a = {2,1,7,2,4,3,0,11,3,4,5,5,6,7,100,92,41,27,14}; for (int i=0;i<a.size();i++){ if (a[i] == 100){ cout << i; break; } } return 0;} 以上程式碼透過遍歷尋找 100 這個元素...
【C++】競程筆記(枚舉習題練習)
【C++】競程筆記(枚舉習題練習) https://zerojudge.tw/ShowProblem?problemid=c435 123456789101112131415161718192021222324#include <bits/stdc++.h>using namespace std;int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int n; cin >> n; vector<int> a(n); for (int i = 0; i < n; i++) { cin >> a[i]; } int max_left = a[0]; int ans = INT_MIN; // INT_MIN 是 int 資料型態的最小值 -2^31 for (int j = 1; j < n; j++) { ans = ma...
【C++】競程筆記(枚舉)
【C++】競程筆記(枚舉) 程式碼範例參考:NTUCPC Guide,此筆記僅為個人學習用途。 枚舉就是窮舉法,把所有東西都列出來。 字典序(Lexicographic order) 字典序,就是依照字典中出現的先後順序進行排序。 主要是用來比較和已排序序列(特別是字串)的規則,按照類似於字典中單字排列的方式進行運算。 字典序是一種排序方法,其核心思想是透過比較兩個序列的元素,從第一個元素開始,逐步向後,直到找到第一個不同的元素,然後根據這個元素的順序決定兩個序列的先後。 如果一個序列是另一個序列的前綴,則較短的序列排在前面。這種排序方式與我們在字典中查找單字的順序類似,因此被稱為「字典序」。 比較開頭字元 像是 “apple” 和 “banana”: 第一個字元:‘a’ vs ‘b’ ‘a’ 在字母表中排在 ‘b’ 之前,因此 “apple” < “banana”。 若前面字元都相同,則遍歷找兩字串中字元不同處去比較 像是 “apple” 和 “apricot”: 前兩個字元相同:‘a’ = ‘a’, ‘p’ = ‘p’ 第三個字元:‘p’ vs ‘r’ ‘p’...
【Python】競程相關模組、函數、方法等整理 - part 2
【Python】競程相關模組、函數、方法等整理 - part 2 因為最近又要比賽了,所以趕緊做一篇整理複習一下,然後備註一下:這是個人筆記。 優化技巧 避免全域變數 就跟 C / C++ 的做法一樣,建立一個主函數。另外在 Python 中全域變數會害程式變慢。 格式: 12345def main(): print('Hello World')if __name__ == '__main__': main() 列表初始化(生成式與不用生成式) 12[None] * 100[None for _ in range(100)] 建議用 [None] * 100,速度較快。 二維陣列形式: 12# faster[[None] * N for _ in range(N)] for 迴圈遍歷優化 1234567# for i in range(len(A)) -> slowerfor i in range(len(A)): A[i]# for a in A -> fasterfor a in A: a 用下...
【個人筆記】C++ ZeroJudge 基礎題庫解題(純練習) - part 3
【個人筆記】C++ ZeroJudge 基礎題庫解題(純練習) - part 3 a020:https://zerojudge.tw/ShowProblem?problemid=a020 難度:★☆☆☆☆ 流程控制。 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364#include <iostream>#include <string>using namespace std;int main() { // 映射表,索引0對應A(10),1對應B(11),依此類推 int mapping[26] = { 10, 11, 12, 13, 14, 15, 16, 17, 34, 18, ...
【Python】競程相關模組、函數、方法等整理 - part 1
【Python】競程相關模組、函數、方法等整理 - part 1 因為最近又要比賽了,所以趕緊做一篇整理複習一下,然後備註一下:這是個人筆記。 IO優化 輸入優化 使用前引入模組:import sys 或 from sys import stdin,這樣方法就不用多打 sys。 12from sys import stdinline = stdin.readline() 若讀到 EOF 會回傳空字串。 建議搭配 strip() 函數使用: 12from sys import stdinline = stdin.readline().strip() stdin.readline():每次讀取一行資料,直到 \n 為止。由於回傳的字串通常包含 \n,若不需要,用 strip() 去除。 stdin.readlines():一次讀完 stdin,會回傳 list。 stdin.read():讀取整個輸入流的所有資料,直到 EOF。適合一次性讀取大量資料。 以下使用迭代的方式處理 stdin 檔: 123from sys import stdinfor line in stdin:...
【Uva 題庫解題】C++ 個人解題筆記 - part1
【Uva 題庫解題】C++ 個人解題筆記 - part1 https://zerojudge.tw/ShowProblem?problemid=a135 題目原文:https://cpe.mcu.edu.tw/cpe/problemPdf/12250.pdf 單字翻譯: prominent (adj.) 突出的;著名的;卓越的 figure (vt.) 表示 (在此題當作表示之意) European (adj.) 歐洲的;歐洲人的 (n.) 歐洲人 (此題當作形容詞用) equivalent (adj.) 相同的;相等的 (n.) 等於;等同 assume (v.) 假設;冒充、假裝;承擔、擔任 (此題為假設之意) uppercase (adj.) 大寫的 terminate (v.) 使終止;限定;終止、結束 quote (v.) 引用;放在引號內;估計 (n.) 引號 (此題當作引號之意) 2024/12/10 CPE 第一題。 123456789101112131415161718192021222324252627#include <iostream>...
【C++】競程筆記(algorithm 習題練習)
【C++】競程筆記(algorithm 習題練習) 習題取自:NTUCPC Guide 此為個人解題過程,純粹紀錄。 https://tioj.ck.tp.edu.tw/problems/1287 一行測資輸入程式碼寫法: 12345for (int i=0;i<n;i++){ int x; cin >> x; num.push_back(x);} 宣告變數 x 放 for 裡面,然後讓 cin 去讀,在 push_back() 給 vector。 123456789101112131415161718192021222324252627282930313233#include <iostream>#include <vector>#include <algorithm>using namespace std;int main(){ int n; while (cin >> n){ vector <int> num...
【C++】競程筆記(algorithm標頭檔)
【C++】競程筆記(algorithm標頭檔) 分析效率 123456789void bubble_sort(int arr[], int n) { // arr: 要排序的陣列,n: 陣列大小 for (int i = 0; i < n - 1; ++i) // n 次運算 for (int j = 0; j < n - i - 1; ++j) // (n - 1) + (n - 2) + ... + 1 = n * (n - 1) / 2 次運算 if (arr[j] > arr[j + 1]) { // n * (n - 1) / 2 次運算 int tmp = arr[j]; // 至多 n * (n - 1) / 2 次運算 arr[j] = arr[j + 1]; // 至多 n * (n - 1) / 2 次運算 ...





