Submission #1248642

#TimeUsernameProblemLanguageResultExecution timeMemory
1248642Bui_Quoc_CuongRoom Temperature (JOI24_ho_t1)C++20
35 / 100
26 ms328 KiB
#include <bits/stdc++.h>
using namespace std;
// #define int long long
#define FOR(i, a, b) for (int i = a; i <= (int)b; i++)
#define FORD(i, a, b) for (int i = a; i >= (int)b; i--)
#define MASK(i) (1LL << (i))
#define BIT(S, i) (((S) >> (i)) & 1)
#define mp make_pair
#define pb push_back
#define fi first
#define se second
#define all(x) x.begin(), x.end()
const int N = 5e5 + 5;
int n,k;
int a[N];
void init()
{
	cin>>n>>k;
	FOR(i,1,n) cin>>a[i];
}
namespace sub1
{

	void solve()
	{
		int ans=2e9;
		FOR(t,1,3000)
		{
			int ma=0;
			FOR(i,1,n)
			{
				if(a[i]>=t)
				{	
					int tam=(a[i]-t)/k;
					int val=a[i] -k*tam;
					int curma = abs(t-val);

					tam++;
					val=a[i]-k*tam;
					curma=min(curma,abs(val-t));

					tam--; tam--;
					curma=min(curma,abs(val-t));

					ma=max(ma,curma);
				} else ma=max(ma,abs(t-a[i]));
			}	
			ans=min(ans,ma);
		}
		cout << ans;
	}
}
void process()
{
	sub1::solve();
}
signed main(void) 
{
    ios_base::sync_with_stdio(false); cin.tie(nullptr);   
    #define taskname "kieuoanh"
    if(fopen(taskname".inp", "r")) 
    { 
        freopen(taskname".inp", "r", stdin); 
        freopen(taskname".out", "w", stdout);
    }
    init();
    process();
    return 0;
}

Compilation message (stderr)

Main.cpp: In function 'int main()':
Main.cpp:63:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   63 |         freopen(taskname".inp", "r", stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
Main.cpp:64:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   64 |         freopen(taskname".out", "w", stdout);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...