NO.1 单纯的傻傻的代码: #include<stdio.h> long long num[100000005]={0}; int main(){ int n, m, k; scanf("%d%d",&n,&m); while(n--){ scanf("%d",&k); num[k]++; } while(m--){ scanf("%d",&k); if(num[k]!=0) printf("…
测试数据和一些常见的数据都通过了然而还是wrong,可以试试下面的一些解决方案: 1.数据爆掉 ① 可以改变数据类型,以容纳 ② 修改当前算法,比如a*a/b可以改写成a/b*a 2 特殊情况,例如地图只有一行而算法默认的地图是多行的,如两个数刚好相等时,两个数都为0时等等 ① 输入极端值测试,根据情况修改程序 ②计算过程中算法太复杂,一般情况下代码越少越不容易出现错误,所以中间步骤越少越好,宁愿牺牲时间 3 精度问题 ①使用强制转换,将int…
与兔子方格类似,不过一秒走一格: 输入 代码 #include<iostream> using namespace std; int main(void) { int test_count; freopen("input.txt", "r", stdin); cin >> test_count; int R;//行数 int C;//列数 int A, B;//出发点坐标 int N;//经过时间 int flagA; int flagB;…