#include using namespace std; #define rep(i, n) for(int i = 0; i < n; i++) #define pb push_back #define debug(x) cout << #x << " " << x << endl #define all(x) x.begin(),x.end() #define ll long long #define vi vector #define vvi vector #define vvvi vector #define vll vector #define vvll vector #define ld long double #define ull unsigned long long #define vull vector #define fi first #define se second #define PII pair #define vPII vector #define getunique(v) {sort(v.begin(), v.end()); v.erase(unique(v.begin(), v.end()), v.end());} vi a(100005); set secik[10]; int suma[100005]; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); // cout << setprecision(12) << fixed; // freopen("input.txt", "r", stdin); // freopen("output.txt", "w", stdout); int tt = 1; // cin >> tt; while(tt--){ int n; cin >> n; a[0] = 0; rep(i,n) cin >> a[i+1]; suma[0] = 0; secik[0].insert(0); for(int i = 1; i <= n; i++){ suma[i] = (suma[i-1] + a[i])%10; secik[suma[i]].insert(i); } for(int i = 1; i <= n; i++){ int cur = suma[i-1]; auto it = lower_bound(all(secik[cur]),i); if(it == secik[cur].end()){ cout << -1; }else{ cout << *it - i + 1; } if(i != n) cout << " "; } } }