好多次都會遇到題目的數據過大,需要使用到long long,然而又忘記了怎么寫了,先寫下代碼吧。
#include<bits/stdc++.h> using namespace std; typedef long long ll; int main(){ ll a; cin>>a; cout<<a; return 0; }
這樣寫就可以直接用ll代替long long的定義了,對了,昨天有看到一個區別關於定義,初始化,賦值的關系,初始化包括定義和賦值,函數外是不可以初始化的,只能定義,好想是這樣的,沒忘的話就是這樣。
寫的很low,但后面自己看看也會很有益處,有時間會再來修改這些博客,提高質量。
一般遇到數據比較大都需要用到這種定義,如果你在程序里不用這樣的定義也可以,直接用long long定義,但不覺得用ll定義更方便嗎,當閱讀代碼時,也能很快知道這個程序的數據很大,對了,數據多大要用long long呢?因為int是四個字節32位,表示的數的范圍是-2147483648 ~ 2147483647[-2^31 ~ 2^31-1],2后面是有9位數的,也可以簡單記憶為他可以表示10的9次方的數,再大一次方就不行了,有些時候你自己都不知道題目的數據超過了int的范圍,當錯誤有時候不知道怎么解決,就是拿不了滿分,那就該懷疑數據范圍了,可以嘗試把int換為 long long。