Loading

【题解】AtCoder[ABC113B] Palace

AT4266 [ABC113B] Palace

水题解*n

translation

\(n\) 个地方,第 \(i\) 个地方的海拔为 \(H_i\),该地方的温度为 \(T-H_i \times 0.006\)
求哪个地方的温度离 \(A\) 最近。

solution

我们可以每次输入 \(H_i\) 后计算温度,并将温度值减 \(A\) 并取绝对值,与 \(ans\) 比较,若小于之前的 \(ans\) 则记录 \(i\) 的值。

code

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <cmath>
#include <string>
#include <iomanip>
#define line cout << endl
using namespace std;

int n, t, a, num;
double ans = 1e9;

int main() {
	cin >> n;
	cin >> t >> a;
	for (int i = 1; i <= n; i++) {
		int h;
		cin >> h;
		double _t = t - h * 0.006;
		if (ans > abs(_t - a)) {
			ans = abs(_t - a);
			num = i;
		}
	}
	cout << num << endl;
	return 0;
}

submissions

洛谷 | AtCoder

posted @ 2020-11-03 19:50  AgrumeStly  阅读(143)  评论(0编辑  收藏  举报