Il tuo obiettivo è generare un grafico a torta di arte ASCII. Questo è code-golf, quindi vince il programma più breve (contando i byte del codice sorgente, non i caratteri).
Non sono ammessi software o API esterni. Solo quelli nativi di ogni lingua.
L'angolo iniziale e la direzione (senso orario / antiorario) del cerchio non sono importanti. L'output può apparire ovale perché l'altezza di un personaggio è sempre superiore alla sua larghezza.
Lo "sfondo" (caratteri a sinistra o a destra della torta) deve essere uno spazio.
Come input, hai tre variabili (inserisci il codice per inizializzarlo. L'inizializzazione di queste variabili non viene conteggiata nel tuo punteggio):
k: Matrice di personaggi. Ogni personaggio è quello che deve essere usato sul grafico a tortav: Matrice di galleggianti. È la percentuale di ogni personaggio. La lunghezza divè uguale alla lunghezza dik. La somma dei suoi elementi è sempre 1.0r: Numero intero> 1. È il raggio del grafico a torta.
s=lambda k,v,a:' 'if not v else k[0]if a<v[0]else s(k[1:],v[1:],a-v[0])e usando un punto e virgola per mettere l'istruzione if su una rigaif x*x+y*y<r*r:a=atan2(y,x)/pi/2+.5;t=t+s(k,v,a)