ကျောင်းသားတက်ရောက်မှုမှတ်တမ်းငါ Leetcode ဖြေရှင်းချက်


ခက်ခဲအဆင့် လွယ်ကူသော
မကြာခဏမေးတယ် Google
ကြိုး

ပြstatementနာကြေညာချက်

“ ကျောင်းသားတက်ရောက်မှုမှတ်တမ်း ၁” ပြtheနာတွင်ကျွန်ုပ်တို့အား a ကြိုး ဘယ်မှာစာတစ်စောင်ကျောင်းသားတစ် ဦး ၏တက်ရောက်သူအသေးစိတ်ကိုကိုယ်စားပြုတယ်ဘယ်မှာ။ string မှာရှိတဲ့အက္ခရာတွေရဲ့အဓိပ္ပာယ်ကတော့အောက်ပါအတိုင်းဖြစ်သည် -

  1. 'A' သည်ပျက်ကွက်ခြင်းကိုဆိုလိုသည်။
  2. 'P' သည်ပစ္စုပ္ပန်ကိုဆိုလိုသည်။
  3. L ကနောက်ကျတယ်

အကယ်၍ သူသည်တစ်ရက်ထက်ပိုပြီးပျက်ကွက်ခြင်းမရှိပါက (သို့) နှစ်ရက်ထက်နောက်ကျ။ နောက်ကျခြင်းမရှိလျှင်ကျောင်းသားသည်သူ၏တက်ရောက်မှုအပေါ် အခြေခံ၍ ဆုချလိမ့်မည်။ ကျွန်ုပ်တို့၏တာဝန်သည်ကျောင်းသားအားဆုချခြင်းရှိ / မရှိဆုံးဖြတ်ရန်ဖြစ်သည်။

နမူနာ

str="PPALLP"
true

ရှင်းလင်းချက်:

ကျောင်းသားတက်ရောက်မှုမှတ်တမ်းငါ Leetcode ဖြေရှင်းချက်

ကျောင်းသားတစ်ရက်ထက်မပိုသောကြောင့်နှစ်ရက်ထက်နောက်ကျ။ နောက်ကျခြင်းမရှိသောကြောင့်သူသည်ဆုကိုရရမည်။

ကျောင်းသားတက်ရောက်မှုမှတ်တမ်း I Leetcode Solution အတွက်ချဉ်းကပ်မှု

အကောင်အထည်ဖော်ရေး

၎င်းသည်အခြေခံအကောင်အထည်ဖော်မှုပြproblemနာဖြစ်သည်။ ကျောင်းသားသည်ဆုချီးမြှင့်ခံရခြင်းရှိ၊ မရှိကိုရှာဖွေရန်လိုသည်။ ထို့ကြောင့်ကျောင်းသားအားဆုချရန်သူသည်တစ်ရက်ထက်ပိုပြီးပျက်ကွက်ခြင်းရှိမရှိစစ်ဆေးပြီးနှစ်ရက်ကျော်နောက်ကျလျှင်နောက်ကျခြင်းရှိမရှိစစ်ဆေးသင့်သည်။ ဤစစ်ဆေးမှုကိုပြုလုပ်ရန်ကျွန်ုပ်တို့သည်ဤအဆင့်များကိုလိုက်နာပါမည်။

  1. 'A' အရေအတွက်နှင့် 'L' အရေအတွက်ကိုသုညဖြင့်စတင်ပါ
  2. ပြီးပြည့်စုံသော string ကိုဖြတ်သန်း။
    1. အကယ်၍ လက်ရှိအက္ခရာသည် 'A' ဖြစ်ပါက 'A' ၏အရေအတွက်ကိုတစ်လုံးတိုးပါ။
    2. အကယ်၍ လက်ရှိအက္ခရာသည်“ L” ဖြစ်ပါက“ L” ၏အရေအတွက်ကိုတစ်လုံးတိုးပါ။
    3. ဒီလိုမှမဟုတ်ရင် 'L' ၏နံပါတ်သုညဖြစ်လာသည်။
    4. 'A' သည် ၂ ထက်ကြီးသည်သို့မဟုတ်ညီမျှသည်၊ သို့မဟုတ် 'L' သည် ၂ ထက်ကြီးသည်ဟုတ်မဟုတ်စစ်ဆေးပါ။ အကယ်၍ အခြေအနေမှန်ကန်ပါက false return ပြန်ပါ။
  3. အဆုံး၌, အားလုံးအခြေအနေများကျေနပ်မှုရှိပါကထို့နောက်စစ်မှန်တဲ့ပြန်လာပါ။

ကျောင်းသားတက်ရောက်မှုမှတ်တမ်း ၁ အတွက် C ++ ကုဒ်

#include <bits/stdc++.h> 
using namespace std; 
bool checkRecord(string s) {
    int a=0, l=0;
    for(int i=0;i<s.size();i++) {
        if(s[i]=='A') a++;
        if(s[i]=='L') l++;
        else l=0;
        if(a>=2||l>2) return false;
    }
    return true;
}

int main() 
{ 
    string attendence ="PPALLP"; 
    bool ans=checkRecord(attendence); 
    cout<<boolalpha;
    cout<<ans<<endl;
    return 0;
}
true

ကျောင်းသားတက်ရောက်မှုမှတ်တမ်း ၁ အတွက် Java ကုဒ်

import java.util.Arrays;
import java.util.Set ;
import java.util.HashSet;
import java.util.*; 
public class Tutorialcup {
    public static boolean checkRecord(String s) {
    int a=0, l=0;
    for(int i=0;i<s.length();i++) {
        if(s.charAt(i)=='A') a++;
        if(s.charAt(i)=='L') l++;
        else l=0;
        if(a>=2||l>2) return false;
    }
    return true; 
    }
  public static void main(String[] args) {
        String attendence ="PPALLP"; 
        boolean ans=checkRecord(attendence); 
        System.out.println(ans);
  }
}
true

ကျောင်းသားတက်ရောက်မှုမှတ်တမ်း ၁ Leetcode Solution ၏ရှုပ်ထွေးမှုအားသုံးသပ်ခြင်း

အချိန်ရှုပ်ထွေး

အထက်ပါကုဒ်၏အချိန်ရှုပ်ထွေးသည် အို (ဎ) ဘာလို့လဲဆိုတော့ကျွန်တော်တို့က string ကိုတစ်ကြိမ်သာဖြတ်သန်းနေလို့ပါ။ ဤတွင် n ပေးထားသော string ကို၏အရှည်သည်။

အာကာသရှုပ်ထွေးမှု

အပေါ်ကကုဒ်ရဲ့ရှုပ်ထွေးမှုက အို (၁) ဘာလို့လဲဆိုတော့ငါတို့ကအဖြေကိုသိမ်းဖို့ variable တစ်ခုပဲသုံးတယ်။

ကိုးကား