127 条题解
-
-1
A1 你好,梦熊 OJ !题解
思路
题目的描述十分简单,只要输出
Hello, MXOJ!
即可。所以我们必须要整点活。解题方法
众所周知,梦熊 OJ 是支持多种编程语言的,那么在这么多
垃圾语言中,最简单的一定是python
,至于为什么,我也不知道,反正你就记住用python
只要写print("Hello, MXOJ!")
就行了。
但是,当您使用python
进行提交时,您会发现一件事情:使用python
的运行时间长达 21ms,这肯定是不行的。所以我们可以使用 C++ 系列的流输入输出来做这道题(代码最后统一给,这里仅保留关键部分)。而 C++ 系列的流输入输出的板子长这样:std::cout<<"Hello, MXOJ!";
,如果您不想写最前面的std::
,请在代码最前面写上using namespace std;
或者using std::cout;
但是,这样还是不够快。
众众众众所周知,有个变态神奇的东西叫 C 语言,而 C 语言中,有一种格式化输出的函数(其实只有这个)叫printf
,是的,它就凭多了一个f
,效率就会比python
中的print
快 20ms ,并且不需要加上std::
,所以我们可以这样写:printf("Hello, MXOJ!");
请注意:使用 C++ 或 C 语言编写的代码一般情况下需要再语句末尾加上英文分号;
,否则 CE 别找我。Code
python
版:print("Hello, MXOJ!")
C++ 流输入版 1:
#include <iostream>//使用 cout 需调用此头文件,#include后面不需要分号 int main(){//主函数 std::cout<<"Hello, MXOJ!"; return 0;//结束程序 }
C++ 流输入版 2:
#include <iostream> using namespace std; int main(){ cout<<"Hello, MXOJ!"; return 0; }
C 语言格式化输出版:
#include <stdio.h> int main(){ printf("Hello, MXOJ!"); return 0; }
当然 C 语言的格式化输入 C++ 也是可以用的,就像这样:
#include <cstdio>//stdio.h 是 C 语言的,在 C++ 上执行,建议改为 cstdio int main(){ printf("Hello, MXOJ!"); return 0; }
彩蛋
稍微整个活
知周所众,C++ 里有个东西叫 STL,STL 里有个东西叫 string 。于是我们便可以完成以下操作:
#include <iostream> #include <string>//不写这个 CE 别找我 using namespace std; int main(){ string s="Hello, MXOJ!"; int l=s.length(); for(int i=0;i<l;i++){ cout<<s[i]; //也可以写成printf("%c",s[i]); } return 0; }
当然,STL不止这些,我们还可以这样:
#include <iostream> #include <vector>//不写 CE 别找我 #include <cstring> using namespace std; vector<char>s; int main(){ s.push_back('H'); s.push_back('e'); s.push_back('l'); s.push_back('l'); s.push_back('o'); s.push_back(','); s.push_back(' '); s.push_back('M'); s.push_back('X'); s.push_back('O'); s.push_back('J'); s.push_back('!'); auto l=s.size(); for(int i=0;i<l;i++){ cout<<s[i]; } return 0; }
END
信息
- ID
- 1
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 1
- 标签
- (无)
- 递交数
- 2873
- 已通过
- 1401
- 上传者