Board logo

標題: APCS實作題-交錯字串 [打印本頁]

作者: 李知易    時間: 2025-1-4 10:15     標題: APCS實作題-交錯字串

本帖最後由 李知易 於 2025-1-4 12:05 編輯

[attach]20381[/attach]
本帖隱藏的內容需要回復才可以瀏覽


條件:
1.是否交錯 ->有:l =1,跑條件2 ;沒有:l++,跑條件3
2.重複的次數小於輸入的k -> len = 0
3.重複的次數大於輸入的k -> len = k ex. 2 aaaBB
4.重複次數如果剛好等於輸入的k -> len += k ex. 2 aaBB len = 4
作者: 徐啟祐    時間: 2025-1-4 12:00

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int n(char c)
  4. {
  5.     if(c>='a' && c<='z')    //是小寫
  6.         {
  7.             return 0;
  8.         }
  9.     else                    //是大寫
  10.         {
  11.             return 1;
  12.         }
  13. }
  14. int main()
  15. {
  16.     int k,counter=0,sum=0,q=0,s=0,a=0;
  17.     string str;

  18.     cin>>k>>str;
  19.     int c[str.length()];
  20.     int b;
  21.     for(int i=0;i<str.length();i++)
  22.     {
  23.         c[i]=n(str[i]);
  24.     }
  25.    
  26.     cout<<sum<<endl;
  27. }
複製代碼

作者: 洪承廷    時間: 2025-1-4 14:43

本帖最後由 洪承廷 於 2025-1-4 15:55 編輯
  1. #include<bits/stdc++.h>
  2. using namespace std;

  3. int main()
  4. {
  5.     int k,n,last,l=0,len=0,maxV=0;
  6.     string str;
  7.     cin>>k>>str;
  8.     for(int i=0;i<str.length();i++)
  9.     {
  10.         n=isupper(str[i]);
  11.         if(i==0)
  12.             last=n;
  13.         if(last==n)
  14.         {
  15.             l++;
  16.             if(l>k)
  17.                 len=k;
  18.         }else
  19.         {
  20.             if(l<k)
  21.                 len=0;
  22.             l=1;
  23.         }
  24.         if(l==k)
  25.         {
  26.             len+=k;
  27.         }
  28.         maxV=max(maxV,len);
  29.         last=n;
  30.     }
  31.     cout<<maxV;
  32.     return 0;
  33. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/) Powered by Discuz! 7.2