题解「AT4266」[ABC113B] Palace

Posted -tnt-

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了题解「AT4266」[ABC113B] Palace相关的知识,希望对你有一定的参考价值。

AT4266 [ABC113B] Palace

水题解*n

translation

(n) 个地方,第 (i) 个地方的海拔为 (H_i),该地方的温度为 (T-H_i imes 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


以上是关于题解「AT4266」[ABC113B] Palace的主要内容,如果未能解决你的问题,请参考以下文章

AT_abc139f 题解

AT_abc106_d [ABC106D] AtCoder Express 2 题解

题解 AT3718 [ABC081B] Shift only

题解 AT3717 [ABC081A] Placing Marbles

题解 AT4170 [ABC103A] Task Scheduling Problem

题解 AT4164 [ABC102A] Multiple of 2 and N