څلور جلا واټونه وویشئ


مشکل کچه په اسانۍ سره
په مکرر ډول دننه پوښتل کیږي Accenture ایڈوب GoDaddy ګرفرز Honeywell Quora سپلک
تار

ستونزه بیان

د "سپلیټ څلور مختلف سټینګونو" ستونزې کې موږ باید دا وګورو چې ورکړل شوی آخذه که نه تار کولی شي په 4 تارونو وویشل شي چې هر تار یې خالي نه دی او له یو بل څخه توپیر لري.

ننوتۍ بmatه

لومړنی او یوازینی واحد چې د "s" تار لري.

وتۍ بmatه

"هو" چاپ کړئ که موږ ورکړل شوي تار په څلور غیر مساوي فرعي برخو ویشلو نو نور یې "نه" چاپ کړه.

خنډونه

  • 1 <= | s | <= 10 ^ 6
  • s [i] باید د ټیټ قضیې الفبا وي

بېلګه

tutorialscup
Yes

وضاحت: دلته ، موږ پوهیږو چې د تار اوږدوالی له 10 څخه ډیر دی نو بیا موږ وکولی شو په ساده ډول د 1 ، 2 ، 3 او n-6 اوږدوالی ته ستن مات کړو چیرې چې n د ورکړل شوي تار اوږدوالی دی.

aabab
No

الګوریتم د څلور جلا جلا سټریټونو ویشلو ته

1. که چیرې د تار اوږدوالی له 10 څخه ډیر وي یا مساوي وي ، ریښتیني بیرته راشئ. دلته ، که چیرې اوږدوالي 10 سره مساوي وي ، د 1 ، 2 ، 3 ، 4 اوږدوالی سره تارونه رامینځته کیدی شي چې توپیر لري. نو ، ریښتیا راستنیدل.

2. بل د بریټ فورس تخنیک د څلورو فرعي تارونو موندلو لپاره پرمخ وړي چې مختلف دي او کولی شي ورکړل شوي آخذې تار رامینځته کړي.

تطبیق

د C ++ برنامې د څلور جلا جلا سټریټونو ویشلو لپاره

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    string str;
    cin>>str;
    int flag=0;
    if (str.length() >= 10)
    {
        flag=1;
    }
    for (int i = 1; i < str.size(); i++)
    {
        for (int j = i + 1; j < str.size(); j++)
        {
            for (int k = j + 1; k < str.size(); k++)
            {
                string sub1 = str.substr(0, i);
                string sub2 = str.substr(i, j - i);
                string sub3 = str.substr(j, k - j);
                string sub4 = str.substr(k, str.size() - k);
                if(sub1 != sub2 && sub1 != sub3 && sub1 != sub4 && sub2 != sub3 && sub2 != sub4 && sub3 != sub4)
                {
                    flag=1;
                    goto label;
                }
            }
        }
    } 
    label:;
    if(flag)
    {
        cout<<"Yes"<<endl;
    }
    else
    {
        cout<<"No"<<endl;
    }
    return 0;
}

د جاوا برنامې د څلور جلا جلا سټریټونو تقسیم کول

import java.util.Scanner;

class sum
{ 
  public static boolean strcheck(String s1, String s2) 
  { 
    if(s1.compareTo(s2) != 0)
                {
                    return true;
                }
                return false;
  } 
  public static void main(String[] args) 
  { 
    Scanner sr = new Scanner(System.in); 
                String s = sr.next();
                int flag=0;
    if(s.length()>=10)
                {
                    flag=1;
                }
    else
                { 
                    for (int i = 1; i < s.length(); i++) 
                    { 
                            for (int j = i + 1; j < s.length(); j++) 
                            { 
                                    for (int k = j + 1; k < s.length(); k++) 
                                    { 
                                            String s1 = "", s2 = "", s3 = "", s4 = ""; 
                                            s1 = s.substring(0, i); 
                                            s2 = s.substring(i, j); 
                                            s3 = s.substring(j, k); 
                                            s4 = s.substring(k, s.length());
                                            if(strcheck(s1, s2) && strcheck(s1, s3) && strcheck(s1, s4) && strcheck(s2, s3) && strcheck(s2, s4) && strcheck(s3, s4)) 
                                            {
                                                    flag=1; 
                                            }
                                    } 
                            } 
                    } 
                }
                if(flag==1)
                {
                    System.out.println("Yes");
                }
                else
                {
                    System.out.println("No");
                }
  } 
} 
abcd
Yes

د څلور جلا سټریټونو ویشلو لپاره د پیچلو تحلیل

د وخت پیچلتیا

که چیرې د تار اوږدوالی له 10 څخه ډیر وي یا مساوي وي نو د وخت پیچلتیا ده O (1). او په بل ډول ، د وخت پیچلتیا به وي O (n ^ 4) چیرې چې n د تار "s" اندازه ده.

د ځای پیچلتیا

O (1) ځکه چې موږ دلته هیڅ کومز ځای نه کاروو. دلته موږ په ساده ډول د کوم معلوماتو زیرمه کولو پرته ځواب محاسبه کوو.