inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

6. 숫자만 추출 (문자열 컨트롤 : 아마존 인터뷰)

string 타입

293

jfmam

작성한 질문수 47

0

안녕하세요

데이터 타입중 string보다 char배열을 많이 쓰시는데 혹시 속도 측면에서 char이 더빨라서 쓰시는건가요??아니면 코딩스타일 상 더편해서 사용하시는건가요?

C++ 코테 준비 같이 해요!

답변 3

1

김태원

string이나 cahr 배열 둘의 속도 측면의 차이는 없다고 봅니다.

처음 이 강의를 만들 때 생각이 이 강의를 듣는 분들이 C문법을 바로 뗀 분들이라 생각해서 scanf, printf를 입출력으로 사용했고, scanf나 printf에는 string 보다는 char 배열이 더 어울릴 거라 생각해서 그랬던것 같습니다. 

string 이 멤버함수가 있어 문자열 다루기에 편리하긴 하죠.^^ 시간나면 string 관련 영상을 하나 찍어 추가하도록 하겠습니다.

0

mins

안녕하세요 지나가는 수강생입니다. 첫번째 for문 쓰실때  } 괄호가 빠진것 같아요!

0

JiHyun Lee

안녕하세요. C언어를 공부하기 위해 강의를 수강한 학생입니다. 강의는 C++로 진행되고 있지만, 개인적으로 C언어로 따로 코드를 짜서 구현하며 공부하고 있습니다. 

다만, 해당 문제를 C언어로 코딩했을 때, 원하는 결과가 잘 나오지 않아서 질문 드렸습니다. 

#include <stdio.h>

#include <stdlib.h>

int main(void){

   char arr[50];

   int i,num=0, res=0;

   scanf("%s", arr);

   printf("%s\n", arr);

   for(i=0; arr[i]!='\0'; i++){

      if(arr[i]>=48 && arr[i]<=57){

         num = num*10 + (arr[i]-48);

printf("%d", num);

      }

      printf("%d\n", num);

      for(i=1; i<num+1; i++){

         if(num%i==0){

            res++;}

      }

      printf("%d", res);

      return 0;

   }

}

다음과 같이 코드를 입력했을 때 if문이 작동하지 않는 것 같습니다. 혹시 어디가 문제인지 가르쳐주실 수 있으실까요? 

감사합니다. 

테스트 케이스 질문

0

373

1

병합정렬 시간복잡도 질문

0

462

1

41.연속된 자연수의 합 문제풀이에서 수학적인 원리를 모르고 있습니다.

0

1345

2

질문드립니다.

0

376

1

질문드립니다!

0

430

1

dev 프로그램 질문

0

275

1

문제가 이해가 안되요

0

376

1

4번 나이차이 문제 접근법 질문 드립니다.

0

307

1

source file not compiled

0

1047

3

59번 질문드립니다.

0

372

1

25번 문제 질문

0

349

1

4. 나이차이 문제 질문입니다.

0

372

1

90번 라이언 킹 심바 1번 테스트 케이스

0

470

1

71번 문제 전역 변수 질문 있습니다

0

365

1

75번, 79번 priority_queue관련

1

356

1

75.최대 수입 스케줄

0

400

2

복면산 정답의 수

0

432

1

테스트 케이스에 대해서

0

445

1

수업 내용 질문입니다!

1

232

1

풀어보면 좋은 문제 목록 - 2580 스토쿠 DFS 질문입니다!!

0

822

2

12. 플로이드-와샬(그래프 최단거리) . 27:25초

0

255

1

다른 풀이 방식

0

317

1

크루스칼 vs 프림

0

306

1

숫자 총개수 small 질문있습니다.

0

243

1