C++ 如何使用外部代码进行竞争性编程

C++ 如何使用外部代码进行竞争性编程,c++,shared-libraries,biginteger,C++,Shared Libraries,Biginteger,在解决一个问题时,我意识到我必须存储非常大的整数,unsigned long long int无法存储答案。我读到了 你能帮我解决这个问题吗。但我感到困惑有两个原因 我不知道如何在我用来解决问题的另一个文件中实际使用这个文件 我不知道像codeforces这样的网站如何接受一个使用它无权访问的文件的解决方案 CodeForces和其他OJ将不接受包含任何其他文件或头,除非来自编译器包含的头。因此,您不能通过从OJ中的另一个文件导入来使用它 但是如果你想在本地使用它,你可以这样做。为此,请下载或将

在解决一个问题时,我意识到我必须存储非常大的整数,
unsigned long long int
无法存储答案。我读到了 你能帮我解决这个问题吗。但我感到困惑有两个原因

我不知道如何在我用来解决问题的另一个文件中实际使用这个文件


我不知道像codeforces这样的网站如何接受一个使用它无权访问的文件的解决方案

CodeForces和其他OJ将不接受包含任何其他文件或头,除非来自编译器包含的头。因此,您不能通过从OJ中的另一个文件导入来使用它

但是如果你想在本地使用它,你可以这样做。为此,请下载或将Bigint.cpp的内容复制到源位置。也许和我的一样

├── bigint.h
└── main.cpp
注意:我将Bigint.cpp重命名为Bigint.h

然后您可以在main.cpp(或任何您想要的)中编写代码。只需将其作为标题包含。也许是这样的

   1 #include <bits/stdc++.h>
   2 
   3 using namespace std;
   4 
   5 #include "bigint.h"
   6 
   7 int main (){
   8     bigint b(1000);
   9     cout << b.size() << endl;
  10     return 0;
  11 }

1#包括
2.
3使用名称空间标准;
4.
5#包括“bigint.h”
6.
7 int main(){
8比京特b(1000);

9 CUT,但我有两个原因困惑。我不知道有什么困惑。C++中没有内置的“大整数”类型,因此你必须编写自己的类来完成它。实际上你需要坐下来写代码来完成大整数的工作,并且这个站点已经“键入”了。代码——您只需复制/粘贴它。只需将代码复制到您的项目中。小心使用您不理解的代码。当出现问题时,并且经常出现问题时,您没有一个基础来构建调试它所需的期望。请不要在ans中使用
#include
,并避免使用
使用命名空间std;
wers。第一种方法对我们来说是个糟糕的主意,而第二种方法则使第一种方法的最坏效果更容易受到攻击。旁注:编写代码时不打算将其作为标题,并且包含在其中,通常会产生恶劣的效果,例如用作标题。在修改此答案时请谨慎。@user4581301我理解您的担忧。但是我没有阅读Bigint结构以了解它使用了什么结构。因此,对于示例处理程序来说,使用
似乎“没问题”。感谢您的建议。