Submission #471375

#TimeUsernameProblemLanguageResultExecution timeMemory
471375malarPalindromes (APIO14_palindrome)C++14
8 / 100
1087 ms131076 KiB
#include <iostream> using namespace std; bool isPalindrome(string str) { for(int i = 0; i <str.length()/2; i++) { if(str[i] != str[str.length()-1-i]) { return false; } } return true; } int findPosition(string array[], string str, int size) { for(int i = 0; i < size; i++) { if(array[i] == str) { return i; } } return -1; } int arraylength(string str) { int len = 0; int i = 1; while(i <= str.length()) { len = len + i; i++; } return len; } int findMax(int array[], int maxPos) { int max = array[0]; for(int i = 1; i <= maxPos; i++) { if(array[i] > max) { max = array[i]; } } return max; } int main() { string str; cin >> str; string substr[arraylength(str)]; int times[arraylength(str)]; int points[arraylength(str)]; string temp; int maxIndex = -1; for(int i = 0; i < str.length(); i++) { temp = ""; for(int k=i; k < str.length(); k++) { temp = temp + str[k]; if(isPalindrome(temp)) { int pos = findPosition(substr, temp, sizeof(substr)/sizeof(substr[0])); if(pos >= 0) { times[pos] = times[pos] + 1; } else{ maxIndex++; substr[maxIndex] = temp; times[maxIndex] = 1; } } } } for(int i = 0; i <= maxIndex; i++) { points[i] = substr[i].length() * times[i]; } int maxPoints = findMax(points, maxIndex); cout << maxPoints; }

Compilation message (stderr)

palindrome.cpp: In function 'bool isPalindrome(std::string)':
palindrome.cpp:5:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    5 |  for(int i = 0; i <str.length()/2; i++) {
      |                 ~~^~~~~~~~~~~~~~~
palindrome.cpp: In function 'int arraylength(std::string)':
palindrome.cpp:25:10: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   25 |  while(i <= str.length()) {
      |        ~~^~~~~~~~~~~~~~~
palindrome.cpp: In function 'int main()':
palindrome.cpp:55:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   55 |  for(int i = 0; i < str.length(); i++) {
      |                 ~~^~~~~~~~~~~~~~
palindrome.cpp:57:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   57 |   for(int k=i; k < str.length(); k++) {
      |                ~~^~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...