A programação de quebra-cabeças e o Code Golf se formou na versão beta. Em breve, obteremos um design de site personalizado e, com isso, os limites de reputação para privilégios subirão. Muitos usuários perderão privilégios no site. Portanto, sua tarefa é escrever um programa que nos diga quanta reputação extra precisaremos para manter nossos privilégios.
Tarefa
Sua tarefa é escrever o código mais curto para encontrar a quantidade de reputação extra que um usuário precisará para manter seus privilégios atuais após o design do site, considerando o número de pontos de reputação.
Entrada / Saída
Você pode aceitar entrada e fornecer saída da maneira que desejar, desde que siga estas regras:
Entrada - Um número inteiro de 1 a 250000+, inclusive . Seu programa ou função deve poder aceitar números maiores que isso, mas deve aceitar números nesse intervalo.
Saída - Um número inteiro que representa o número de pontos de reputação que o usuário precisará obter para manter seus privilégios atuais após a graduação.
Sem brechas padrão , por favor.
Algoritmo de exemplo
- Definir variável
i
para a entrada - Defina a variável
r
como variáveli
. - Enquanto
r
não estiver na listabeta
:- Subtrair
1
der
.
- Subtrair
- Defina
n
para a posição der
inbeta
. - Defina
r
para o itemn
degraduated
. - Defina a variável
o
para o resultado der
-
i
. - Se
o
<
0
:- Defina a variável
o
como0
.
- Defina a variável
- Variável de saída
o
.
Tabelas
Tabela de privilégios que mudarão
| privilege name | beta rep | graduation rep |
-+-----------------------------+----------+----------------+-
| create tags | 150 | 1500 |
| access review queues | 350 | 500 |
| cast close and reopen votes | 500 | 3000 |
| established user | 750 | 1000 |
| edit questions and answers | 1000 | 2000 |
| create tag synonyms | 1250 | 2500 |
| approve tag wiki edits | 1500 | 5000 |
| access to moderator tools | 2000 | 10000 |
| protect questions | 3500 | 15000 |
| trusted user | 4000 | 20000 |
| access to site analytics | 5000 | 25000 |
-+-----------------------------+----------+----------------+-
| privilege name | beta rep | graduation rep |
Tabela de privilégios que não serão alterados
| privilege name | reputation |
-+------------------------------+------------+-
| create posts | 1 |
| participate in meta | 1 |
| create wiki posts | 10 |
| remove new user restrictions | 10 |
| vote up | 15 |
| flag posts | 15 |
| talk in chat | 20 |
| comment everywhere | 50 |
| set bounties | 75 |
| create chatrooms | 100 |
| edit community wiki | 100 |
| vote down | 125 |
-+------------------------------+------------+-
| privilege name | reputation |
Casos de teste
wizzwizz4 | 750 | 2250
cat | 2004 | 7996
Dennis ♦ | 72950 | 0
Dr Green Eggs and Ham DJ | 4683 | 15317
New User | 1 | 0
Nem todas as contagens de reputação estão corretas no momento da redação.
Se você deseja que sua reputação passada ou presente conte aqui, basta comentar abaixo e talvez eu a adicione.