C++ Codeforces测试服务器错误,无法在本地计算机上复制
我的代码:C++ Codeforces测试服务器错误,无法在本地计算机上复制,c++,c++11,g++,C++,C++11,G++,我的代码: #include <stdlib.h> #include <iostream> #include <math.h> int main(int argc, char *argv[]) { long long n = atoi(argv[1]); long long m = atoi(argv[2]); long long a = atoi(argv[3]); if (n == 0 || m == 0 || a == 0) {
#include <stdlib.h>
#include <iostream>
#include <math.h>
int main(int argc, char *argv[]) {
long long n = atoi(argv[1]);
long long m = atoi(argv[2]);
long long a = atoi(argv[3]);
if (n == 0 || m == 0 || a == 0) {
std::cout << "" << 0 << std::endl;
return 0;
}
long long num_tiles = ceil(n / a) * ceil(m / a);
if (num_tiles == 0) num_tiles = 1;
std::cout << "" << num_tiles << std::endl;
return 0;
}
#包括
#包括
#包括
int main(int argc,char*argv[]){
长n=atoi(argv[1]);
长m=atoi(argv[2]);
长a=atoi(argv[3]);
如果(n==0 | | m==0 | | a==0){
std::cout这些线条是罪魁祸首:
在在线判断中,您必须从标准输入(STDIN)获取输入,并将输出转换为标准输出(STDOUT)
使用任何标准方法,如scanf
或cin
获取输入并使用printf
或cout
给出输出。不要期望在argc
或argv
中有任何有用的内容
看看这个
另一位著名在线法官的摘录,也适用于Codeforces
如果您使用标准输入和输出流以外的任何方法(例如,使用命令行参数、读取文件、打开某种对话框等),您将永远不会被判断为正确
这些线路是罪魁祸首:
在在线判断中,您必须从标准输入(STDIN)获取输入,并将输出转换为标准输出(STDOUT)
使用任何标准方法,如scanf
或cin
获取输入并使用printf
或cout
给出输出。不要期望在argc
或argv
中有任何有用的内容
看看这个
另一位著名在线法官的摘录,也适用于Codeforces
如果您使用标准输入和输出流以外的任何方法(例如,使用命令行参数、读取文件、打开某种对话框等),您将永远不会被判断为正确
问题不在编译中(尽管您的#include
'style'自90年代以来就被弃用),但您的程序是不正确的。对于初学者来说,与此无关,ceil(不适用)
没有意义。@BaummitAugen你能建设性地详细说明你的评论吗?既然n/a
是一个整数,为什么要在上面调用ceil
?另外,使用cstdlib
而不是stdlib.h
,std::atoi
(对于给定的LHS btw,函数选择错误,请阅读文档)而不是atoi
等等。调用ceil
是因为我不想要楼层划分。我已经更新了标题。@BaummitAugen它是如何被弃用的?问题不在编译中(尽管自90年代以来您的#include
样式被弃用),您的程序不正确。对于初学者,与此操作无关,ceil(不适用)
没有意义。@BaummitAugen你能建设性地详细说明你的评论吗?既然n/a
是一个整数,为什么要在上面调用ceil
?另外,使用cstdlib
而不是stdlib.h
,std::atoi
(对于给定的LHS btw,函数选择错误,请阅读文档)而不是atoi
等等。调用ceil
是因为我不想要楼层划分。我已经更新了标题。@BaummitAugen它是如何被弃用的?
int main(int argc, char *argv[]) {
long long n = atoi(argv[1]);
long long m = atoi(argv[2]);
long long a = atoi(argv[3]);