Skip to content

Latest commit

 

History

History
86 lines (65 loc) · 2.42 KB

ACMrule.md

File metadata and controls

86 lines (65 loc) · 2.42 KB

在线判决系统是机器判题系统,也就是俗称的OJ(Online Judge)。

机器判决的一个特点就是必须100%的吻合才能判为正确,否则要么WA,PE。

同时对于提交的程序还有一定的时间限制,如果超过时间则会判超时。

机器判决只针对程序结果,不针对程序,所以很多时候直接提交数据也是可以的,俗称打表。

输入

一.常见的几种输入形式

只有一组数据

参考代码:

int a, b; 
scanf("%d %d", &a, &b);

没有明确指出输入什么时候结束 默认是以“文件结束”(EOF)为结束标志,华为OJ也是这样。 参考代码:

int a, b; 
while (scanf("%d %d", &a, &b) != EOF){...}

指定数据量 有时会在数据的第一行提供数据量大小,比如第一行是100,则表示有100组数据。

参考代码:

int n, a, b; 
scanf("%d", &n);
while (n--)
{
scanf("%d %d", &a, &b);
printf("%d/n", a + b);
}

以特定元素作结束符 这种输入和第一种类似。常见的是规定以0作为结束符。 参考代码:

int a, b; 
scanf("%d ", &a );
while (a ){ scanf("%d ", &a ); ... }

常用输入输出

putchar ():把变量中的一个字符常量输出到显示器屏幕上;
getchar ();从键盘上输入一个字符常量,此常量就是该函数的值;
printf  ();把键盘中的各类数据,加以格式控制输出到显示器屏幕上;
scanf   ();从键盘上输入各类数据,并存放到程序变量中;
puts    ():把数组变量中的一个字符串常量输出到显示器屏幕上;
gets    ():从键盘上输入一个字符串常量并放到程序的数组中.

格式化输入输出scanf()和printf()

printf("格式控制".输出列表);  
printf("a=%d,b=%f,c=%c/n",a,b,c);
常用格式化字符:

%d   以十进制形式输出带符号整数(正数不输出符号) 
%ll long long 型64位
%o 以八进制形式输出无符号整数(不输出前缀O) 
%x   以十六进制形式输出无符号整数(不输出前缀OX) 
%u   以十进制形式输出无符号整数 
%f   以小数形式输出单精度实数 
%.2f 只显示小数点后两位
%lf 以小数形式输出双精度实数
%e   以指数形式输出单、双精度实数 
%g   以%f%e中较短的输出宽度输出单、双精度实数 
%c   输出单个字符