超級瑪麗
題意:中文...
思路:比賽時,資料弱了,讓我乙個o(10^12)的程式都過了,後來就沒多想,加上資料後。改為o(n)的才過。列舉能跳過的雲彩數,然後對跳躍的長度d取餘求商,計算餘數+ m與l的差值(即雲彩之間的距離)在檢查看看能否跳過,如果不能,就截止在這裡不會繼續往下跳了。
注意資料型別long long
//#pragma comment(linker,"/stack:327680000,327680000")
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #define cl(arr, val) memset(arr, val, sizeof(arr))
#define ll long long
#define inf 0x7f7f7f7f
#define lc l,m,rt<<1
#define rc m + 1,r,rt<<1|1
#define pi acos(-1.0)
#define ll long long
#define l(x) (x) << 1
#define r(x) (x) << 1 | 1
#define mid(l, r) (l + r) >> 1
#define min(x, y) (x) < (y) ? (x) : (y)
#define max(x, y) (x) < (y) ? (y) : (x)
#define e(x) (1 << (x))
#define iabs(x) (x) < 0 ? -(x) : (x)int
#define out(x) printf("%i64d\n", x)
#define lowbit(x) (x)&(-x)
#define read() freopen("din.txt", "r", stdin)
#define write() freopen("dout.txt", "w", stdout);
using namespace std;
ll n[2],d[2],m[2],l[2];
int main()
} if (i >= n[0])
for (i = 0; i < n[1]; ++i)
} if (i >= n[1])
if (ct1 == ct2)
else
} return 0;
}
《超級瑪麗》3
第三階段 目標 實現水平方向和豎直方向上的碰撞,更具有真實感。1 要想解決水平方向的碰撞,就要先明白乙個問題,地圖上的哪些東西是不能夠穿過的,也就是說要先定義好地圖上的某些可供碰撞檢測的物體磚塊型別。如圖 水平檢測函式的開頭準備工作 為了簡化水平方向的檢測,因為馬里奧的錨點是中心位置,所以左右兩邊的...
C語言 超級瑪麗
演算法提高 超級瑪麗 時間限制 1.0s 記憶體限制 256.0mb 問題描述 大家都知道 超級瑪麗 是乙個很善於跳躍的探險家,他的拿手好戲是跳躍,但它一次只能向前跳一步或兩步。有一次,他要經過一條長為n的羊腸小道,小道中有m個陷阱,這些陷阱都位於整數字置,分別是a1,a2,am,陷入其中則必死無疑...
演算法提高 超級瑪麗
演算法提高 超級瑪麗 時間限制 1.0s 記憶體限制 256.0mb 問題描述 大家都知道 超級瑪麗 是乙個很善於跳躍的探險家,他的拿手好戲是跳躍,但它一次只能向前跳一步或兩步。有一次,他要經過一條長為n的羊腸小道,小道中有m個陷阱,這些陷阱都位於整數字置,分別是a 1,a2,a m,陷入其中則必死...