AtCoder Beginner Contest 160 Merci pour votre travail acharné! Page officielle
Le code que j'ai écrit cette fois est ici Le résultat était AC jusqu'à A-E. 5 questions après une longue période ca va augmenter votre tension ^^
Je vais vous expliquer brièvement ci-dessous.
Puisqu'une chaîne de 6 caractères est passée en argument,
String.charAt()
Ce n'est pas grave si vous retirez le caractère du caractère spécifié et le comparez.
Le problème est que vous recevez un montant et que vous l'échangez correctement contre des pièces de 500 yens et des pièces de 5 yens. Le résultat de la réponse est «joie», et si vous avez une pièce de 500 yens, vous obtiendrez 1000 joie, alors faites attention à ne pas doubler le montant donné. En outre, veuillez noter que simplement parce que la joie de 5 est incluse dans la pièce de 5 yens, il ne suffit pas d'ajouter simplement le montant de l'excédent.
long happy = (x / 500) * 1000;
x = x % 500;
happy = happy + (x / 5) * 5;
J'ai pu AC comme ça.
Une maison est construite autour de l'étang, vous donnant une distance d'un certain point. Il s'agit de trouver la distance minimale pour faire le tour de chaque maison.
Cette fois-ci, la maison est construite autour d'un étang, donc l'itinéraire réel devrait ressembler à un gars de test de vision. La forme est comme un petit cercle. Par conséquent, si vous pouvez trouver la distance la plus éloignée entre les maisons, vous pouvez calculer la distance minimale en soustrayant cette distance de la circonférence extérieure de l'étang.
En gros, rappelez-vous la distance de la maison précédente et calculez-la chaque fois que vous y entrez. La première maison et la dernière sont également côte à côte, alors n'oubliez pas de les comparer.
C'est un problème de sortir combien de graphes non orientés avec N sommets ont une distance de k. J'ai peur d'utiliser des graphiques non dirigés ou d'autres mots difficiles, mais ce graphique est simple.
Au mieux, il n'y a que deux voies, soit aller directement, soit prendre la route entre X et Y.
Même si vous pensez que TLE est susceptible de se produire, vous pouvez être assuré de voir ce qui suit.
3 ≤ N ≤ 2 × 10^3
Exprimé en code, cela ressemble à ceci: Dans une boucle double for, je calcule ce qui est le plus proche, en allant directement ou en passant entre X et Y, et je l'ajoute au tableau de réponses.
for (int i = 1; i <= n; i++) {
for (int j = i; j <= n; j++) {
int direct = j - i;
int shortCut = dist(i, x) + 1 + dist(j, y);
int dist = Math.min(direct, shortCut);
answer[dist]++;
}
}
Une méthode appelée dist Cela ressemble à ce qui suit.
public static int dist(int p, int q) {
return Math.max(q - p, p - q);
}
Mangez X pommes rouges et Y pommes vertes. Étant donné la saveur délicieuse des pommes rouges et la saveur délicieuse des pommes vertes, mangez pour maximiser la saveur. Il existe également une pomme incolore, qui peut être colorée.
Je l'ai résolu avec l'algorithme suivant.
--Arranger les pommes rouges et vertes par ordre de délices
Donc, j'ai pu AC en toute sécurité. Je pense que la raison de la victoire était que j'ai pu ajouter les pommes incolores au tableau APPLE.
Personnellement, le niveau de difficulté est faible dans le problème E ...?
Après avoir réfléchi environ 5 minutes, je n'ai pas pu le faire, donc j'étais absent les 20 minutes restantes lol
Performance de l'eau (1411) pour la première fois depuis longtemps La cote est de 936 → 1003, ce qui est la première fois à dépasser 1000! !! : rougir:
Le problème E était un peu simple, mais je suis content d'avoir réussi à le résoudre ... Je veux m'en tenir à l'AC de A-E et le stabiliser. Si vous pouvez le faire, vous devriez bientôt pouvoir devenir un nom d'eau! : mains levées:
Merci d'avoir lu jusqu'au bout!
Recommended Posts