Carregando

Problema do LeetCode#3110

Score of a String

Resolvido em 2 linguagensC#Java

Resolver no LeetCode(abre em uma nova aba)

Solução

38 linhas
1class Solution
2{
3    int ScoreOfString(string s) {
4        int score = 0;
5        for (var i = 0; i < s.Length - 1; i++)
6        {
7            int difference = (int)s[i] - (int)s[i + 1];
8            if (difference > 0)
9            {
10                score += difference;
11            }
12            else
13            {
14                score -= difference;
15            }
16        }
17        return score;
18    }
19
20    void AssertEqual(int actual, int expected)
21    {
22        if (actual != expected)
23        {
24            throw new System.Exception("Expected " + expected + ", but got " + actual);
25        }
26    }
27
28    void Test()
29    {
30        AssertEqual(ScoreOfString("hello"), 13);
31        AssertEqual(ScoreOfString("zaz"), 50);
32    }
33
34    public static void Main()
35    {
36        new Solution().Test();
37    }
38}
1class Solution {
2    public int scoreOfString(String s) {
3        int score = 0;
4
5        for (int i = 0; i < s.length() - 1; i++) {
6            int difference = s.codePointAt(i) - s.codePointAt(i + 1);
7            if (difference > 0) {
8                score += difference;
9            }
10            else {
11                score -= difference;
12            }
13        }
14
15        return score;
16    }
17}

Quer uma explicação desta solução em C#?

Receba uma explicação passo a passo da ideia por trás do código.

Todos os problemas

Os enunciados dos problemas pertencem ao LeetCode e estão em leetcode.com. Não temos vínculo com o LeetCode.