Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
любитель покушать
 Аватар для Севак
687 / 641 / 248
Регистрация: 25.09.2011
Сообщений: 1,313

Перевод кода с Java

07.07.2013, 22:35. Показов 873. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Есть кусок кода на java, в котором идет работа с map, пробовал переписать самостоятельно, но ничего хорошего из этого не вышло, вот что нужно перевести:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int n = Integer.parseInt(reader.readLine());
String s = reader.readLine();
 
        
        HashMap<Integer, Integer> starts = new HashMap<>();
        starts.put(0, 0);
        
        int counter = 0;
        int max = 0;
        
        for(int i=0; i<n; ++i) {
            counter = s.charAt(i) == '1' ? counter + 1 : counter - 1;
            
            if(!starts.containsKey(counter)) {
                starts.put(counter, i);
            } else {
                int pos = starts.get(counter);
                if(i - pos + 1 > max) {
                    max = i - pos + 1;
                }
            }
        }
вот моя попытка:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <map>
 
using namespace std;
 
int main()
{
    int n;
    string s;
 
    //ifstream in("input.txt");
    //in >> n >> s;
    //in.close();
 
    cin >> n >> s;
 
    int counter = 0;
    int maxCount = 0;
 
    map<int, int> starts;
    starts[0] = 0;
 
 
 
    for(int i=0; i<n; ++i) {
        counter = (s[i] == '1') ? counter + 1 : counter - 1;
 
        if(starts[counter] == NULL) {
            starts[counter] = i;
        } else {
            int pos = starts[counter];
            if(i - pos + 1 > maxCount)
            {
                maxCount = i - pos + 1;
            }
        }
    }
 
 
 
    //ofstream out ("output.txt");
    //out << max;
    //out.close();
 
    cout << maxCount/2;
 
    return 0;
}
Добавлено через 32 минуты
Надобность в переписывании пропала, всем спасибо за внимание!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.07.2013, 22:35
Ответы с готовыми решениями:

Перевод кода с Java на С++
Помогите перевести следующий код с Java на C++: * Вызывающий класс*/ public class Main{ public static void main(String args){ ...

Перевод кода с Java на С++
Такой вот код нужно перевести. import java.io.*; import java.math.BigInteger; import java.util.*; public class Main { /** *...

Перевод кода с Java на С++
Помогите перевести следующий код с Java на C++: import java.io.File; import java.io.IOException; import java.util.Scanner; ...

1
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
08.07.2013, 15:34
Севак, как по мне, так нужно начать отталкиваться от того, что hashmap в с++ называется unordered_map
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.07.2013, 15:34
Помогаю со студенческими работами здесь

Перевод кода из java в С++
Делаю попытку создать хоть какую то стратегию http://russianaicup.ru/post/2#comment-926 ,помогите перевести код на с++. Или хотя бы как...

Перевод кода Java в С++
Доброго времени суток уважаемые знатоки, я начинающий Джавист и параллельно обучаюсь по дистанционной программе. Дело в том, что нам дали...

Перевод кода с Java
Здравствуйте! Есть код на java, который работает недостаточно быстро, для его ускорения решил переписать его на c++, вот что вышло,...

Перевод кода с Pascal на Java - Java SE
var a:Int64; begin Reset(Input,'input.txt'); Rewrite(Output,'output.txt'); read(a); Write(a,9,9-a) end. Заранее...

Перевод кода с С++ на Java
Добрый день! Перевожу код С++ на Java и обычно если возникают сложности Гугл помогает, а тут никак . Вот код на С++ bool...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru