mod: findClosestNumber
This commit is contained in:
@ -209,9 +209,6 @@ class Utils {
|
|||||||
int minDiff = 127;
|
int minDiff = 127;
|
||||||
int closestNumber = 0; // 初始化为0,表示没有找到比目标值小的整数
|
int closestNumber = 0; // 初始化为0,表示没有找到比目标值小的整数
|
||||||
|
|
||||||
if (numbers.contains(target)) {
|
|
||||||
return target;
|
|
||||||
}
|
|
||||||
// 向下查找
|
// 向下查找
|
||||||
try {
|
try {
|
||||||
for (int number in numbers) {
|
for (int number in numbers) {
|
||||||
@ -226,6 +223,20 @@ class Utils {
|
|||||||
}
|
}
|
||||||
} catch (_) {}
|
} catch (_) {}
|
||||||
|
|
||||||
|
// 向上查找
|
||||||
|
if (closestNumber == 0) {
|
||||||
|
try {
|
||||||
|
for (int number in numbers) {
|
||||||
|
int diff = (number - target).abs();
|
||||||
|
|
||||||
|
if (diff < minDiff) {
|
||||||
|
minDiff = diff;
|
||||||
|
closestNumber = number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (_) {}
|
||||||
|
}
|
||||||
|
|
||||||
// 向上查找
|
// 向上查找
|
||||||
if (closestNumber == 0) {
|
if (closestNumber == 0) {
|
||||||
try {
|
try {
|
||||||
|
Reference in New Issue
Block a user