1 Star 0 Fork 0

agony/LeetCode

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
134.GasStation.Test.cs 1.13 KB
一键复制 编辑 原始数据 按行查看 历史
Kai Yang 提交于 2015-08-30 18:48 . 134. Gas Station
using System.Linq;
using Newtonsoft.Json;
using NUnit.Framework;
[TestFixture]
public class TestClass : TestClassBase
{
[TestCase(10, 10, 1000)]
public void TestMethod(int maxLength, int maxValue, int repeatTimes)
{
Repeat(repeatTimes, () =>
{
var length = Random.Next(maxLength + 1);
var gas = GenerateIntegerArray(length, length, 0, maxValue);
var cost = GenerateIntegerArray(length, length, 0, maxValue);
var expectedResult = CanCompleteCircuit(gas, cost);
var result = new Solution().CanCompleteCircuit(gas, cost);
Assert.AreEqual(expectedResult, result);
});
}
private int CanCompleteCircuit(int[] gas, int[] cost)
{
for (var start = 0; start < gas.Length; ++start)
{
var gasLeft = 0;
var end = start;
for (; end < start + gas.Length; ++end)
{
gasLeft += gas[end % gas.Length] - cost[end % gas.Length];
if (gasLeft < 0) break;
}
if (end == start + gas.Length) return start;
}
return -1;
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/agony2020/LeetCode.git
git@gitee.com:agony2020/LeetCode.git
agony2020
LeetCode
LeetCode
master

搜索帮助