[기초 100제] 98번 설탕과자 뽑기

2019. 10. 27. 03:47·C/C++
목차
  1. 1. 문제
  2.  
  3. 2. 소스코드

 

1. 문제

 

https://codeup.kr/problem.php?id=1098

 

[기초-2차원배열] 설탕과자 뽑기

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용 및 이미지들은 저작자와의 협의 없이 무단으로 사용할 수 없습니다.

codeup.kr

 

2. 소스코드

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
 
#include <iostream>
#include <stdlib.h>
using namespace std;
 
    typedef struct _stick{
        int length;
        int direction; // 0이면 가로 1이면 세로 
        int x, y;
    }Stick;
 
 
void InsertStick(Stick * sp, int Go[][100])
{
    int i, j;
    if(!sp->direction)
    for(i = 1, j = sp->y; i <= (sp->length) ; j++, i++)
    {
        Go[sp->x][j]++;
    }
    else
    for(i = sp->x, j = 1; j <= (sp->length) ; i++, j++)
    {
        Go[i][sp->y]++;
    }
}
 
int main (void){
    
 
    
    int N, h, w, i, j;
    cin >> h >> w;
    cin >>N;
    int Go[h+1][100] = {0};
    Stick *arr[N] = {NULL}; //필수 구조체 포인터배열 
    
    for(i = 0 ; i < N; i++)
    {
        arr[i] = (Stick *)malloc(sizeof(Stick));
        cin >> arr[i]->length >> arr[i]->direction >> arr[i]->x >> arr[i]-> y;
        InsertStick(arr[i], Go);
 
    }
    
    for(i = 1; i <= h ; i++)
    { 
        for(j = 1; j <= w ; j++)
        {
            cout << Go[i][j] << ' ';
        }
        cout << endl;
    }
    
    for(i = 0 ; i < N ; i++)
    {
        free(arr[i]);
    }
 
    return 0;
    
    
}
 

Stick * arr[i] = (Stick *)malloc(sizeof(Stick))이 안먹힌다.

사전에 구조체 포인터 배열을 선언해주어야만 먹힌다.

 

+

 

2차원 배열 인자로 넘길경우 2번재 element 갯수 

int arr[][]일 일경우 2번째 arr[][크기] '크기'를 반드시 넘겨줘야한다.

 

for(i=1; i <= h; i++, puts("")) << 같이 줄바꿈 스킬. 체크하고 넘어가자 ㅎㅎ

'C > C++' 카테고리의 다른 글

Copy Constructor  (0) 2019.11.20
character array vs String  (0) 2019.11.10
[백준 2752] 세 수 정렬하기  (0) 2019.10.28
[코드업 기초 100제 - 85번] 소리 파일 저장용량 계산하기  (0) 2019.10.07
[C++] Reference  (0) 2019.10.05
  1. 1. 문제
  2.  
  3. 2. 소스코드
'C/C++' 카테고리의 다른 글
  • character array vs String
  • [백준 2752] 세 수 정렬하기
  • [코드업 기초 100제 - 85번] 소리 파일 저장용량 계산하기
  • [C++] Reference
M_Falcon
M_Falcon
  • M_Falcon
    Falcon
    M_Falcon
  • 전체
    오늘
    어제
    • 분류 전체보기 (420)
      • Web (57)
        • Nodejs (14)
        • Javascript (23)
        • FrontEnd (4)
      • DataBase (39)
        • Fundamental (1)
        • Redis (4)
        • PostgreSQL (10)
        • NoSQL (4)
        • MySQL (9)
        • MSSQL (3)
        • Error (4)
      • Algorithm (79)
        • Algorithm (문제풀이) (56)
        • Algorithm (이론) (23)
      • JVM (3)
        • Spring (11)
        • JPA (5)
        • Kotlin (13)
        • Java (18)
        • Error (6)
      • 기타 (67)
        • Kafka (3)
        • Kubernetes (3)
        • Docker (12)
        • git (19)
        • 잡동사니 (25)
      • 재테크 (11)
        • 세무 (4)
        • 투자 (3)
        • 보험 (0)
      • BlockChain (2)
        • BitCoin (0)
      • C (32)
        • C (10)
        • C++ (17)
        • Error (3)
      • Low Level (8)
        • OS (3)
        • 시스템 보안 (5)
      • 네트워크 (3)
      • LINUX (30)
        • Linux (26)
        • Error (4)
      • 저작권과 스마트폰의 이해 (0)
      • 생각 뭉치 (6)
      • 궁금증 (2)
      • Private (4)
        • 이직 경험 (0)
        • 꿈을 찾아서 (1)
      • Android (21)
        • OS (4)
  • 블로그 메뉴

    • 홈
    • WEB
    • 알고리즘
    • DataBase
    • Linux
    • Mobile
    • C
    • 방명록
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    Spring
    docker
    프로그래머스
    linux
    JPA
    Kotlin
    C++
    java
    android
    백준
    Bitcoin
    Programmers
    database
    kafka
    알고리즘
    javascript
    ubuntu
    PostgreSQL
    Git
    algorithm
  • hELLO· Designed By정상우.v4.10.3
M_Falcon
[기초 100제] 98번 설탕과자 뽑기

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.