Code Jam Kickstart 2018 Round G 题解

这轮kickstart是自己认真参加的,但是一题也没做出T T;讲道理每次的第一题是最简单的,应该可以作出,但是这次的题目,还是算法写错了,没关系,赛后复盘总结下;

Problem A : Product Triplets

https://code.google.com/codejam/contest/5374486/dashboard#s=p0&a=0

题意:

即在一个数组中找到至少满足下面三个条件之一的三元组(x,y,z)

  • Ax = Ay × Az, and/or
  • Ay = Ax × Az, and/or
  • Az = Ax × Ay

分析:

是一道搜索题,暴力搜索O(n^3)

我的算法使用set记录,O(n^2),但是有的case没通过;错的原因应该是没有考虑清楚重复的情况,比如数值相同,但下标不同,也算不同的三元组的情况;

另外我没想到可以先排序

解法:

应该使用hashmap

猜你喜欢

转载自www.cnblogs.com/shawshawwan/p/9828657.html