Résolvez A ~ D du codeur yuki 247 avec python

J'ai participé au codeur yuki 247 (https://yukicoder.me/contests/262). Je ne pouvais résoudre que jusqu'à C dans le temps imparti, mais après la fin, j'ai résolu jusqu'à D, donc je vais mettre à D.

A S'il y a des fruits positifs, triez-les et classez les positifs. Si vous n'en avez que des négatifs, vous pouvez choisir l'un des négatifs les plus récents.

# A

N, K = list(map(int, input().split()))
As = list(map(int, input().split()))
positives = [a for a in As if a >= 0]
negatives = [a for a in As if a < 0]

if positives:
    selected = sorted(positives)
else:
    selected = [sorted(negatives)[-1]]

selected = selected[-min(K, len(selected)):]
print(sum(selected))

B Si $ N_0 = 0, N_ {i + 1} = AN_i + B $ et $ N_ {n} = 0 $, trouvez le nombre minimum de pas $ n $. C'est $ N_ {n + 1} = \ sum_ {i = 1} ^ n A ^ i B = \ frac {1-A ^ {n + 1}} {1-A} B $, donc $ B Il ne peut être vu que lorsque = 0 $ ou $ A = -1 $.

# B

A, B = list(map(int, input().split()))

if B == 0:
    print(1)
elif A == -1:
    print(2)
else:
    print(-1)

C Découvrez si vous êtes coincé dans l'une des situations suivantes:

  1. Il existe un entier $ n $ qui est $ LK \ leq nM \ leq RK $
  2. K=0

1 peut être n'importe quelle différence entre la partie entière de $ RK / M $ et la partie entière de $ LK / M $ étant égale ou supérieure à 1, ou $ R $ ou $ L $ étant un multiple de $ M $. La raison pour laquelle la différence est supérieure à 1 est de considérer quand la différence entre $ LK $ et $ RK $ est inférieure à $ M $.

# C

L, R, M, K = list(map(int, input().split()))

if R * K // M - L * K // M >= 1 or R * L % M == 0 or K == 0:
    print('Yes')
else:
    print('No')

D Soit $ z_i $ le nombre s'il est nul au $ i $ ème temps, et $ n_i $ s'il n'est pas nul. Dans ce cas, l'équation graduelle suivante peut être créée.

\displaystyle{
\begin{aligned}
z_{i+1} &= (P+1)z_i + 2 n_i,  \\
n_{i+1} &= (P-1)z_i + 2(P-1)n_i.
\end{aligned}
}

À propos de la formule de mise à jour de $ z_i $ --1 élément: Total $ P + 1 $ comme ci-dessous

# D

P, K = list(map(int, input().split()))
mod = 10**9 + 7

z_i, n_i = 1, 0
for i in range(K):
    z_i, n_i = (P + 1) * z_i + 2 * n_i, (P - 1) * z_i + 2 * (P - 1) * n_i
    z_i, n_i = z_i % mod, n_i % mod

print(z_i)

Recommended Posts

Résolvez A ~ D du codeur yuki 247 avec python
Résoudre ABC166 A ~ D avec Python
Résoudre AtCoder ABC168 avec python (A ~ D)
[AtCoder] Résoudre un problème de ABC101 ~ 169 avec Python
Résoudre ABC163 A ~ C avec Python
Résoudre ABC168 A ~ C avec Python
Résoudre ABC162 A ~ C avec Python
Résoudre ABC167 A ~ C avec Python
Résoudre ABC158 A ~ C avec Python
Une collection de techniques professionnelles compétitives à résoudre avec Python
[AtCoder] Résoudre ABC1 ~ 100 Un problème avec Python
Résoudre ABC165 A, B, D avec Python
Je voulais résoudre le problème ABC164 A ~ D avec Python
Résolvez AtCoder 167 avec python
[Python] axe limite du graphe 3D avec Matplotlib
Résoudre des maths avec Python
Essayez de résoudre un problème défini de mathématiques au lycée avec Python
Résolvez POJ 2386 avec python
[Explication AtCoder] Contrôlez les problèmes A, B, (C), D de ABC165 avec Python!
[Explication AtCoder] Contrôlez les problèmes A, B, C, D d'ABC183 avec Python!
Résoudre avec Ruby et Python AtCoder ABC084 D Somme cumulative des nombres premiers
[Explication AtCoder] Contrôlez les problèmes A, B, C, D d'ABC181 avec Python!
Mémo connecté à HiveServer2 d'EMR avec python
Recommandation de construction d'un environnement Python portable avec conda
[Python] Comment créer un histogramme bidimensionnel avec Matplotlib
Créer un fichier CAO 2D ".dxf" avec python [ezdxf]
[Python] Résoudre des équations avec sympy
Résolvez AtCoder ABC166 avec python
Créer un gif 3D avec python3
python> Gestion des tableaux 2D
Résoudre ABC175 D en Python
Faites une loterie avec Python
AtCoder ABC 182 Python (A ~ D)
Créer un répertoire avec python
Acquisition d'un groupe de points 3D avec Pepper de Softbank (Choregraphe, Python)
Résolution avec Ruby et Python AtCoder ABC133 D Somme cumulée
Obtenez une liste des livres électroniques DMM achetés avec Python + Selenium
[At Coder] Résoudre les problèmes typiques de la recherche de priorité en profondeur (DFS)
Détecter les objets d'une couleur et d'une taille spécifiques avec Python
J'ai essayé de simuler la probabilité d'un jeu de bingo avec Python
Tourner un tableau de chaînes avec une instruction for (Python3)
Un enregistrement de patcher un package python
[Python] Qu'est-ce qu'une instruction with?
Faites fonctionner l'imprimante de reçus avec python
Manuel de graphisme Python avec Matplotlib.
Une bonne description des décorateurs Python
Analyse de la structure du squelette en trois dimensions avec Python
Faisons une interface graphique avec python.
[Python] Un mémorandum de belle soupe4
Un bref résumé de la collection Python
Premiers pas avec Python Bases de Python
Créer un environnement virtuel avec Python 3
Recommandation de résolution des problèmes d'AtCoder avec python (20200517-0523)
Créer un système de recommandation avec python
Jeu de vie avec Python! (Le jeu de la vie de Conway)
[Python] Maintenant un codeur marron ~ [AtCoder]
Résoudre ABC036 A ~ C avec Python
10 fonctions du "langage avec batterie" python