הרשם שאלות ותשובות רשימת חברים לוח שנה חיפוש הודעות מהיום סמן פורומים כנקראו

   
|!|

 
 
כלים לאשכול תצורת הצגה
Prev הודעה קודמת   הודעה הבאה Next
ישן 07-11-07, 20:29   # 4
SDF
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2006
מיקום: Negev
הודעות: 270

SDF לא מחובר  

תודה על האתגר לשעת ערב זו ;)

למיטב הבנתי את השאלה, אתה צריך לטפל גם במקרה כזה:
ab$abe$ab$ab$adsg

כלומר יש מחרוזת סימטרית... פשוט לא עם ה$ ה-1.
כמוכן אין סיבה ממשית לרוץ על כל המחרזות של 100 תווים (למשל) אם מצאנו
את השרשרת ב10 הראשונים...

הנה מימוש שלי:

PHP קוד:
#include <stdio.h>
#include <stdlib.h>


int sim(char **stint len) {
    
int ok 00fst 0next 0;

    while (!
ok && len) {
        
//printf("%c\n", (*st)[i]);
        
if ((*st)[i] == '$'
            if (!
fstfst i;
                else {
                    
next = (fst)+i;
                    if (
next len) {
                        if ((*
st)[next] == '$'ok 1;
                        }
                    else 
fst i;
                }
        
i++;
    }
    return 
ok;
}

int main() {
    
charst;
    
int st_size 0;
    
printf("Enter ST size: ");
    
scanf("%d", &st_size);
    
st = (char *) malloc(sizeof(char) * st_size);
    
printf("Enter ST(%d): "st_size);
    
scanf("%s"st);

    
printf("Result of SIM: %d\n"sim(&stst_size));
    return 
0;


הקוד רץ על GCC, כמובן טל"ח.

פלט:
קוד:
yury@moon ~ $ gcc sim.c -o sim
yury@moon ~ $ ./sim
Enter ST size: 20
Enter ST(20): abcd$dg$asdg$adgd$dsgsg
Result of SIM: 1
yury@moon ~ $
__________________
FreeBSD, a *nix operating system

Last edited by SDF; 07-11-07 at 20:35..
  Reply With Quote
 

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 

כלים לאשכול
תצורת הצגה

חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 02:15.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ