标签:int 格式 mem gets line stl 经典 想法 排名
简单
难题
1332
char str[100];
gets(str);
reverse(str + a, str + b);
1325
最开始的想法是进行倒bfs,逆推回去,但是代码太繁琐了,参考答案是枚举每个中毒的点,进行bfs模拟和结果对比,bfs的时间复杂度是O(点数+边数),再乘上感染数,不会超时
因为点比边多,可以使用vector进行邻接表的声明,同时注意到是无向图,要存储两次
bfs需要使用vis数组防止重复访问点,并且使用memset初始化vis数组从而可以多次使用
1037
1114
之前在杭电做过一题数据量小的,可以通过格式化输入输出简化,但是这题数据量大,只能考虑进行模拟,如果直接进行10进制模拟还是会越界,所以考虑直接进行二进制模拟,如何使用map简化模拟过程
scanf("%x", &a);
printf("%o", a);
1173
一个思路上进行预处理,从而将时间复杂度从O(n^4)降到O(n^2)
几个容易TLE的点
使用unordered_map(map重复使用需要clear)
初始化在主函数外,避免重复定义
mp.count(key)判断后在加会有问题,因该直接加mp[key]
1330
标签:int 格式 mem gets line stl 经典 想法 排名
原文地址:https://www.cnblogs.com/faberry/p/12359347.html