Quadra't


Enviar solució

Punts: 3 (parcial)
Temps Límit: 1.0s
Límit de memòria: 64M

Autor/a:
tipus del problema
Bucles simples
Categoria
Competitiu
Llenguatges permesos
Bash, C#, C++, Haskell, Java, Kotlin, PHP, Python

aireacondicionat Bambino feia estona que s’hi fixava. Efectivament, hi havia 5 quadrats… havia passat una bona estona contemplant aquest mosaic de rajoles … Bambino contava el quadrat format per la rajola 1, el format per 2, el format per 3 i el format per 4… però no s’havia adonat que havia un s uperquadrat format per la combinació de les rajoles 1-2-3-4. En el cas d’un rectangle de 3x3... El tema es complicava: havia 9 quadrats de tamany 1x1, 4 quadrats de tamany 2x2 i un superquadrat de 3x3. En total 14 quadrats. Bambino es preguntava quants quadrats de qualsevol mida podrien estar continguts en un rectangle qualsevol (m*n)

Entrada

L’entrada comença amb un número indicant la quantitat de casos de prova que vindran a continuació. Cada cas de prova consta de: Un parell de números separats per un espai que indicaran les dimensions del rectangle a considerar (files i columnes). Es garanteix que els valors seran entre 1 i 99

Sortida

Per cada cas de prova, caldrà respondre, en una sola línia, el número de quadrats totals de qualsevol mida que poden estar continguts dins del rectangle.

Exemple d'Entrada

4
2 2
2 3
3 2
5 4

Exemple de Sortida

5
8
8
40

Comentaris


  • -1
    âlejØ  comentat a les nov. 15, 2024, 12:07 a.m.

    Pues yo tengo el siguiente codigo que resuelve el problema pero de manera parcial, osea que me falta algo mas para hacer, pero la verdad no se me ocurre que es lo que me falta en este codigo estoy usando java 8 asi que si alguien podria ayudarme estaria muy agradecido

    /*

    • Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
    • Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template */ package com.mycompany.correcaminos;

    import hackerrank.EjerciciosHackerrank; import java.util.Scanner;

    /*

    • @author alejo */ public class Main {

      public static void main(String[] args) throws Exception {

       Scanner sc = new Scanner(System.in);
       EjerciciosHackerrank ej = new EjerciciosHackerrank();
      
       System.out.println("ingrese casos de prueba");
       int pruebas = sc.nextInt();
      
       int cuadrados = 0;
       for (int i = 0; i < pruebas; i++) {
           System.out.println("ingrese el ancho y largo para ajustar el area del cuadrado: " + (i + 1));
           int x =0;
           int y =0;
            while (true) {
            x = sc.nextInt();
                if (x>0 && x<=99) {
                    break;
                }
            }
            while (true) {
            y = sc.nextInt();
                if (x>0 && x<=99) {
                    break;
                }
            }
    
            int area = x * y;
            int maxArea = 0;
    
            if (x < y) {
                maxArea = x;
            } else {
                maxArea = y;
            }
    
            for (int j = 1; j <= maxArea; j++) {
                cuadrados += (x - j + 1) * (y - j + 1);
    
            }
            System.out.println(cuadrados);
            cuadrados = 0;
        }
    
    }

    }

    ignoren las malas practicas es que ya me estrese de no poder sacar los 3 puntos :((


  • -1
    Ghost  comentat a les oct. 23, 2023, 6:29 p.m.

    cases = int(input())

    for _ in range(cases): files, columnes = map(int, input().split()) quadrats = 0

    costat_quadrat = 1
    
    while costat_quadrat <= files and costat_quadrat <= columnes:
    quadrats += (files - costat_quadrat + 1) * (columnes - costat_quadrat + 1)
    costat_quadrat += 1
    
    print(quadrats)

    • 1
      a24marcasrod  comentat a les nov. 2, 2024, 5:19 p.m.

      Se puede ayudar, pero no decir el ejercicio entero :(( que feo


    • 1
      Grau  comentat a les oct. 28, 2024, 5:00 p.m.

      Man shat the fack ap