Submission

Status:

PPPPPPPPPPPPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: tull

Problemset: Abacus

Language: cpp

Time: 0.003 second

Submitted On: 2026-06-05 20:58:42

#pragma GCC optimize("O3,unroll-loops")
#include <bits/stdc++.h>
using namespace std;
//#define int long long
#define bp '\n'
#define ld long double
#define vp cout<<'\n';
#define all(A) A.begin(),A.end()
using pii=pair<int,int>;
const int MOD=1e9+7;
const int MNLL=-1e18;
const int MXLL=1e18;
const int N=2e5+10;
const string sans[]={"no","yes"};
int d[10][8];
void fil(int l,int x){
    if(x>=5){
        d[1][l]=' ';
        d[2][l]='*';
        x-=5;
    }
    for(int i=1;i<=5;++i){
        if(x>=i){
            swap(d[i+4][l],d[i+3][l]);
        }
    }
}
signed main(){
    cin.tie(nullptr)->sync_with_stdio(false);
    memset(d,'*',sizeof(d));
    memset(d[2],' ',sizeof(d[2]));
    memset(d[3],'-',sizeof(d[3]));
    memset(d[4],' ',sizeof(d[4]));
    int n,lv=7;
    cin>>n;
    while(n)
    {
        fil(lv,n%10);
        n/=10;
        --lv;
    }
    
    for(int i=0;i<10;++i){
        if(i==3){
            for(int i=0;i<7;++i)cout<<"--";
            cout<<"---\n";
            continue;
        }
        for(int j=0;j<8;++j){
            int e=d[i][j];
            cout<<(char)e;
            if(e==45)cout<<'-';
            else cout<<' ';
        }cout<<'\n';
    }
}
/*


*/