能帮我看一下,我的代码错在哪里了,运行结果是对的,拿去OJ网站上提交的时候是错的,和正确代码有怎么区别?
题目:
我的错误代码:
程序代码:
#include<iostream> using namespace std; const int arr[] = { 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1 }; void sum() { int a, b; cin >> a; cin >> b; if (a < b) { cout << arr[b + 1] << endl; } else if(a>b){ cout << arr[a + 1 ] << endl; } } int main() { int n; cin >> n; while (n--) { sum(); } cout << endl; return 0; }
运行结果:
正确代码:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
const int A[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1 };
int T;
int a, b;
int main(void)
{
scanf("%d", &T);
while (T--)
{
scanf("%d%d", &a, &b);
for (int i = 0;; ++i)
{
if (A[i] == a && A[i + 1] == b)
{
printf("%d\n", A[i + 2]);
break;
}
}
}
return 0;
}
[此贴子已经被作者于2021-10-20 16:41编辑过]