關於ACM中的無窮大

1DemonS2發表於2024-03-06

常用const int maxn = 0x3f3f3f3f設定為一些題目中需要的無窮大,這個數是一個10的9次方數量級的資料,一般的資料都不會超過這個數,

而且 這個數還有兩個特點

1.這個數的兩倍不超過 0x7f7f7f7f,即int能表示的最大正整數。

2.整數的每8位(每個位元組)都是相同的。

常用:

  • memset(g, 0, sizeof(g)); //全部清為0
  • memset(g, 0x7f, sizeof(g));    //可全部初始化為一個很大的數(略小於0x7fffffff);
  • memset(g, 0x3f, sizeof(g));    //稍小(適用於有加法運算)
  • memset(g, 0xbf, sizeof(g));    //負值稍大(即0xbfbfbfbf,其實這是一個特別大的正數,因為超過了int的範圍,所以變成了很大的負數)
  • memset(g,-1,sizeof(g));     //全部初始為-1

相關文章