Advertisement
SuitNdtie

String Partition

May 7th, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.73 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<string.h>
  3.  
  4. int main(){
  5.     char str[100010];
  6.     scanf("%s",str);
  7.     int len = strlen(str);
  8.     int ans = len;
  9.     for(int size = 1 ; size < len ; size ++){
  10.         if(len%size != 0)continue;
  11.        
  12.         int sumsize = 0;
  13.     //  printf("Size %d\n",size);
  14.         for(int i = 0 ; i < size; i ++){
  15.             int countchar[260];for(int cc = 0 ; cc < 260 ; cc ++)countchar[cc] = 0;
  16.             int maxc = 0;
  17.             int sum = 0;
  18.     //      printf("Test i %d",i);
  19.             for(int j = i ; j < len ; j += size){
  20.                 countchar[str[j]]++;
  21.                 if(countchar[str[j]] > maxc)maxc = countchar[str[j]];
  22.                 sum++;
  23.             }
  24.             sumsize += sum - maxc;
  25.     //      printf(" : %d\n",sum - maxc);
  26.         }
  27.         if(sumsize < ans)ans = sumsize;
  28.     //  printf("\n");
  29.     }
  30.     printf("%d",ans);
  31.     return 0;
  32. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement