PAT Niveau B-Trio

Description du titre L'
enfant a dit: "Si vous êtes en trio, il doit y avoir mon professeur. Choisissez le bon et suivez-le, et le mauvais le changera."

Dans cette question, la relation des capacités de A, B et C est donnée par:

  • La valeur de la capacité de A est déterminée comme étant 2 entiers positifs;
  • Remplacer les deux chiffres de la valeur de la capacité de A est la valeur de la capacité de B;
  • La différence de capacité entre A et B est X fois celle de C;
  • La valeur de la capacité de B est Y fois celle de C.

Veuillez indiquer qui est plus fort que vous devriez «le prendre», qui est plus faible que vous devriez «le changer».

Format d'
entrée Saisissez trois nombres sur une ligne, dans l'ordre: M (votre propre valeur de capacité), X et Y. Les trois nombres sont des entiers positifs ne dépassant pas 1000.

Format de sortie Sortez d'
abord la valeur de capacité de A sur une ligne, puis affichez la relation entre A, B, C et vous dans l'ordre:

  • S'il est plus fort que vous, sortez Cong;
  • L'égalité est sortie Ping;
  • Si vous êtes plus faible que vous, sortez Gai.

Ils sont séparés par 1 espace et il ne doit y avoir aucun espace supplémentaire au début et à la fin de la ligne.

Remarque: Si la solution n'est pas unique, la plus grande solution de A prévaudra; si la solution n'existe pas, elle sera sortie No Solution.

Exemple d'entrée 1
48 3 7

Exemple de sortie 1
48 Ping Cong Gai

Exemple d'entrée 2
48 11 6

Exemple de sortie 2
Pas de solution


测试点4: La valeur de capacité de C peut être un nombre à virgule flottante;


Énumération de la solution :

#include <iostream>
#include <algorithm>
using namespace std;

int M, X, Y;

void print(double x)
{
    
    
    if(x > M) cout << " Cong";
    else if(x == M) cout << " Ping";
    else cout << " Gai";
}

int main()
{
    
    
	cin >> M >> X >> Y;
	
	for (int i = 99; i >= 10; i --)
	{
    
    
	    int a = i;
	    int b = a % 10 * 10 + a / 10;
        double c = (double)abs(a - b) / X;
        
        if(b == c * Y)
        {
    
    
            cout << a;
            print(a), print(b), print(c);
            return 0;
        }
	}
	
	cout << "No Solution" << endl;
	return 0;
}

Je suppose que tu aimes

Origine blog.csdn.net/weixin_46239370/article/details/113933355
conseillé
Classement