Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Переписать код с Java на C++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать класс CPoint – точка http://www.cyberforum.ru/cpp-beginners/thread708903.html
Создать класс CPoint – точка. На его основе создать классы CColoredPoint и CLine. На основе класса CLine создать классы CColoredLine и CPolyLine – многоугольник. Все классы должны иметь методы для...
C++ Как отсортировать двумерный массив по сумме элементов в строке Дан массив 4 4 5 5 5 5 5 5 5 5 5 4 4 5 4 надо чтоб получилось 5 5 5 5 5 4 4 5 5 5 5 4 4 5 4 http://www.cyberforum.ru/cpp-beginners/thread708902.html
C++ доработать структуру
Определите структурный тип содержащий след инф-ю: Марка авто, цвет, кол-во, цена.Ввести 5 элем-в данного типа. Распечатать инф-ю в табл виде, расположив по алфавиту по цвету.Подсчитать сумму по...
Есть задание написать класс подобный string. Нуждаюсь в уточнениях C++
The class is a dynamic string consisting of US-ASCII characters, i.e. the usual ASCII characters with codes not exceeding 127. This limitation is introduced to exclude problems related to...
C++ Как найти сумму элементов массива ? http://www.cyberforum.ru/cpp-beginners/thread708860.html
#include "stdafx.h" #include <iostream> #include <ctime> #include <iomanip> #include <conio.h> using namespace std; int main(int argc, char* argv) {srand(time(0)); // генерация случайных...
C++ Составить описание класса одномерных массивов строк, каждая строка задается длиной и указателем на выделенную для нее память Реализация системы классов для работы с одномерными массивами строк.Составить описание класса одномерных массивов строк, каждая строка задается длиной и указателем на выделенную для нее память.... подробнее

Показать сообщение отдельно
Hammer.nv
2 / 2 / 0
Регистрация: 24.10.2010
Сообщений: 12

Переписать код с Java на C++ - C++

25.11.2012, 19:37. Просмотров 339. Ответов 0
Метки (Все метки)

Добрый вечер. Помогите переписать код с Java на C++.

Java
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
import java.io.*;
 
import java.util.*;
 
 
 
 
 
public class Discrete {
 
        BufferedReader in;
 
        StringTokenizer tokenizer;
 
        PrintWriter out;
 
        
 
        final static int ALPHA = 'z' - 'a' + 1; 
 
 
 
        public void solve() throws Exception {
 
                int n = nextInt();
 
                int m = nextInt();
 
        
 
                int[][] automata = new int[2][n];
 
                for (int i = 0; i < n; i++) {
 
                        automata[0][i] = nextInt() - 1;
 
                        automata[1][i] = nextInt() - 1;
 
                }
 
                
 
                double [][][] freq = new double[2][n][ALPHA];
 
                                
 
                for (int i = 0; i < m; i++) {
 
                        int len = nextInt();
 
                        char[] input = next().toCharArray();
 
                        char[] ans = next().toCharArray();
 
                        
 
                         int s = 0;
 
                         for (int j = 0; j < len; j++) {
 
                                 int c = input[j] - '0';
 
                                 int l = ans[j] - 'a';
 
                                 freq[c][s][l] += 1.0 / len; 
 
                                 s = automata[c][s];
 
                         }
 
                }
 
                
 
                int[][] answer = new int[2][n];
 
                for (int i = 0; i < 2; i++) {
 
                        for (int j = 0; j < n; j++) {
 
                                double[] f = freq[i][j];
 
                                int max = 0;
 
                                for (int k = 0; k < ALPHA; k++) {
 
                                        if (f[k] > f[max]) {
 
                                                max = k;
 
                                        }
 
                                }
 
                                answer[i][j] = max;
 
                        }
 
                }
 
                
 
                for (int i = 0; i < n; i++) {
 
                        out.printf("%c %c\n", answer[0][i] + 'a', answer[1][i] + 'a');
 
                }
 
        }
 
        
 
        private int nextInt() throws Exception {
 
                return Integer.parseInt(next());
 
        }
 
 
 
        private String next() throws Exception {
 
                if (tokenizer == null || !tokenizer.hasMoreTokens()) {
 
                        String s = "";
 
                        while (s.equals("")) {
 
                                s = in.readLine();
 
                        }
 
                        tokenizer = new StringTokenizer(s);
 
                }
 
                return tokenizer.nextToken();
 
        }
 
 
 
        public void run() throws Exception {
 
                solve();
 
                out.close();
 
        }
 
        
 
        
 
        public Discrete() throws IOException {
 
                in = new BufferedReader(new FileReader("input.txt"));
 
                out = new PrintWriter("output.txt");
 
        }
 
        
 
        public static void main(String[] args) throws Exception {
 
                Locale.setDefault(Locale.US);
 
                new Discrete().run();
 
        }
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru