LeetCode [11-el contenedor con más agua] LeetCode [12-entero a números romanos]

El recipiente con más agua.

Descripción del título

Dados n enteros no negativos a1, a2, ..., an, cada número representa un punto (i, ai) en coordenadas. Dibuje n líneas verticales en las coordenadas. Los dos puntos finales de la línea vertical i son (i, ai) y (i, 0). Encuentre dos de las líneas para que el contenedor que forman con el eje x pueda contener la mayor cantidad de agua.
Inserte la descripción de la imagen aquí

Ideas para resolver problemas

El significado de esta pregunta es que la suma de la diferencia entre el subíndice y el valor del subíndice correspondiente a la matriz es la mayor
. Cada vez que compara el área calculada previamente con la actual

Implementación de código

class Solution {
public:
    int maxArea(vector<int>& height) {
        int length = height.size();
        int left = 0;
        int right = length-1;
        int temp = 0;
        int res = 0; //保存结果
        while(left<right)
        {
            //两条边中最短的
            temp = min(height[left],height[right]);
            res  = max(res,(right-left)*temp);
            //如果最短的边是左边,则left++,否则right++
            if(temp == height[left])
            {
                left++;
            }
            else
            {
                right--;
            }
        }
        return res;
    }
};

Entero a número romano

Descripción del título

Ideas para resolver problemas

Busque las tablas una por una, reste el número correspondiente cada vez que encuentre un número y agregue el número romano correspondiente al resultado
Encuentre la tabla de correspondencia entre números romanos y números
Inserte la descripción de la imagen aquí

Implementación de código

class Solution {
public:
    string intToRoman(int num) {
        int values[]={1000,900,500,400,100,90,50,40,10,9,5,4,1};
        string reps[]={"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};
        
        string res;
        for(int i=0; i<13; i++){
            while(num>=values[i]){
                num -= values[i];
                res += reps[i];
            }
        }
        return res;
    }
};
Sol
Publicado 253 artículos originales · elogiado 41 · 40,000+ vistas

Supongo que te gusta

Origin blog.csdn.net/liuyuchen282828/article/details/104616702
Recomendado
Clasificación