Codeforces Round #421 (Div. 1), problem: (D) Mister B and Astronomers Solution In C/C++

#include <bits/stdc++.h>
#define ll long long
using namespace std;

ll n,t,k,i,m,q,f;
ll a[200100],s[200100],w[200100],p[200100],res[200100];
map <int,int> mapp;

ll cal(ll a,ll b,ll c) {
if (c==0) return 0;
if (a==0) return -1;
ll t=cal(b%a,a,(a-(c%a))%a);
if (t==-1) return -1;
else return (b*t+c)/a;
}

ll ucln(ll a,ll b) {
if (b==0) return a;
return ucln(b,a%b);
}

bool cmp(int x,int y) {
return (s[x]%k<s[y]%k) || (s[x]%k==s[y]%k && w[x]<w[y]);
}

int main() {
#ifndef ONLINE_JUDGE
freopen(“819D.inp”,”r”,stdin);
freopen(“819D.out”,”w”,stdout);
#endif // ONLINE_JUDGE

scanf(“%lld %lld”,&t,&n);

for (i=1;i<=n;i++) {
scanf(“%lld”,&a[i]);
if (i>1) s[i]=(s[i-1]+a[i])%t;
}
q=s[n]+a[1];
k=ucln(t,q);
for (i=1;i<=n;i++) {
if (mapp[s[i]]==1) continue;
mapp[s[i]]=1;
w[i]=cal(q,t,s[i]-(s[i]%k));
p[++m]=i;
}

sort(p+1,p+1+m,cmp);

f=1;
for (i=1;i<=m;i++) {
if (s[p[i]]%k!=s[p[i+1]]%k || i==m) {
res[p[i]]=t/k-w[p[i]]+w[p[f]];
f=i+1;
}
else res[p[i]]=w[p[i+1]]-w[p[i]];
}
for (i=1;i<=n;i++)
printf(“%d “,res[i]);
}

Everything You Need to...

📢 As an Amazon Associate, I earn from qualifying...

China’s largest memory chipmaker...

China's semiconductor ambitions are facing a fresh financial dilemma...

The Real Truth About...

📢 As an Amazon Associate, I earn from qualifying...

Is Desk Productivity Tools...

📢 As an Amazon Associate, I earn from qualifying...

The Outer Worlds 2...

Gamers and RPG enthusiasts have reason to celebrate as...

Why Travel Organization Gear...

📢 As an Amazon Associate, I earn from qualifying...

Everything You Need to Know About Portable Cooling Gear Right Now

📢 As an Amazon Associate, I earn from qualifying purchases.💰 Official Price: Check on Amazon🌟 Why Buy the Portable Cooling Gear?The Portable Cooling Gear...

China’s largest memory chipmaker sparks fears of a cash drain before blockbuster IPO

China's semiconductor ambitions are facing a fresh financial dilemma as ChangXin Memory Technologies (CXMT), the nation's premier DRAM chipmaker, prepares for a highly anticipated...

The Real Truth About Bedroom Aesthetic Decor Before You Buy

📢 As an Amazon Associate, I earn from qualifying purchases.💰 Official Price: Check on Amazon🌟 Why Buy the Bedroom Aesthetic Decor?The Bedroom Aesthetic Decor...

Is Desk Productivity Tools Worth Your Money Here Is Our Full Review

📢 As an Amazon Associate, I earn from qualifying purchases.💰 Official Price: Check on Amazon🌟 Why Buy the Desk Productivity Tools?The Desk Productivity Tools...

The Outer Worlds 2 v1.2.0.1-TENOKE

Gamers and RPG enthusiasts have reason to celebrate as Obsidian Entertainment's acclaimed franchise returns with new developments. The highly anticipated sequel to the award-winning...

Why Travel Organization Gear Is Currently Breaking the Internet

📢 As an Amazon Associate, I earn from qualifying purchases.💰 Official Price: Check on Amazon🌟 Why Buy the Travel Organization Gear?The Travel Organization Gear...

Why Everyone Is Talking About the Car Detailing Essentials

📢 As an Amazon Associate, I earn from qualifying purchases.💰 Official Price: Check on Amazon🌟 Why Buy the Car Detailing Essentials?The Car Detailing Essentials...

Why Everyone Is Talking About the Smart Home Hacks

📢 As an Amazon Associate, I earn from qualifying purchases.💰 Official Price: Check on Amazon🌟 Why Buy the Smart Home Hacks?The Smart Home Hacks...

Why Everyone Is Talking About the Viral Kitchen Gadgets

📢 As an Amazon Associate, I earn from qualifying purchases.💰 Official Price: Check on Amazon🌟 Why Buy the Viral Kitchen Gadgets?The Viral Kitchen Gadgets...