如何在竞技编程中将int视为long long int使用
大多数时候,在竞技编程问题中的输入约束比int的限制要大。因此需要使用long int 或long long int。下面让我们看看两种情况,以便即使naive用户编写正确的逻辑,输入仍未被接受,也能知道哪些位置需要纠正。
Case 1: 未重新定义int为long long int的大整数输入
Case 2: 重新定义 int 为 long long int 的大整数输入
Case 1: 未重新定义int为long long int的大整数输入
例子:
输出:
输出解释:
这是因为整数数据类型能够容纳的数字范围是4个字节,也就是说它可以容纳范围为-2,147,483,647到2,147,483,647的整数。在本例中,输出超出变量可以容纳的最大整数,因此报告隐式常量转换的警告。 因此我们需要使用long数据类型,因为它可以容纳8个字节。为了纠正这个问题,我们需要重新定义int。但是,程序仍然会抛出错误,因为主数据类型也会更改。 因此,我们将它们定义为int,以便在比赛中可以提高速度。(即) #define int long long int 。
Case 2: 重新定义 int 为 long long int 的大整数输入
例子:
输出:
时间复杂度:O(1)
辅助空间:O(1)
注意: 这通常用于竞技编程问题,因为它将接受所有输入大小。