바로 문제를 보시겠습니다.

www.acmicpc.net/problem/2741

 

2741번: N 찍기

자연수 N이 주어졌을 때, 1부터 N까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오.

www.acmicpc.net

문제

알파벳 소문자와 대문자로만 이루어진 길이가 N인 단어가 주어진다.

한 줄에 10글자씩 끊어서 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 단어가 주어진다. 단어는 알파벳 소문자와 대문자로만 이루어져 있으며, 길이는 100을 넘지 않는다. 길이가 0인 단어는 주어지지 않는다.

출력

입력으로 주어진 단어를 열 개씩 끊어서 한 줄에 하나씩 출력한다. 단어의 길이가 10의 배수가 아닌 경우에는 마지막 줄에는 10개 미만의 글자만 출력할 수도 있다.

 

11720번 문제와 거의 비슷한데 어느 정도 감이 오지 않나요 ?

 

string 함수를 쓰고 string에서 for문을 돌려 10번째 인 곳에서 "\n"을 하면 됩니다^^,

소스코드를 바로 보시겠습니다.

 

#include <iostream>
#include <cstring>

using namespace std;

int main()
{
    string a;

    getline(cin, a);
    for(int i=0; i<a.size(); i++)
    {
        cout<<a[i];
        if((i + 1 )% 10 == 0)
            cout<<"\n";

        
        
    }
    return 0;
}

getline()이 모르신다면 구글에 getline을 쳐서 이해하시길 바랍니다.

 

이상 포스터를마치겠습니다.

안녕하세요 오늘은 'youtube에서 지식한잔님의 채널"에서 '성공한 사람들의 시간관리 방법'라는 동영상을 봤습니다.

이제 저는 동영상을 보고 난 뒤 메모를 하겠습니다.

왜냐하면 메모를 하지 않으면 제 기억에서 언젠간 사라질 것이 뻔하기 때문입니다.

 

이 '성공한 사람들의 시간관리 방법'에 대해 리뷰를 써보겠습니다.

 

저는 성공한 사람들의 공통점은 제 생각으로

1. 시간을 어떻게 쓰느냐 차이 2. 꾸준함 3. 성실함 4. 실행력 5. 독서 6. 목표 7. 좋아하는 일 등이 있는 것 같습니다.

 

이 동영상에서는 성공한 사람들의 시간관리 방법을 위해 세 가지를 얘기합니다.

 

1. 동기부여가 되는 목표를 세워라 2. 계획을 반드시 문서화 하라. 3. 우선순위를 확실히 분석하라.

 

1. 동기부여가 되는 목표를 세워라.

뚜렷한 목표 설정은 우리에게 동기를 부여하고 스스로 자제력을 상승시키며, 가장 중요한 것에 에너지를 집중할 수 있도록 해줍니다.

근데 목표를 어떤 식으로 세워야 할까?

일단, 포괄적인 목표를 5개 정도 설정을 합니다.

"5년 안에 책을 출간하기", "5년 안에 연 매출 10억짜리 사업 일구기" , "3달 안에 5k감량하기" 같은 목표를 세웁니다.

 

큰 목표를 정했다면, 좀 더 구체적인 목표로 세분화해야 합니다.

 

"5년 안에 연 매출 10억짜리 사업 일구기"라면 이 계획을 자세히 분류합니다.

ex) "사업 플랫폼은 유튜브에서 시작하기", "재무제표 마스터 하기", "사업 지원 제도  알아보기" 등으로 합니다.

 

그 후 분류한 목표에서 각각 실제로 행할 지침을 써봅니다.

"일주일에 두 번 영상 업로드 하기" , "일주일에 두 번 재무제표 공부하기", "중소벤처기업부 창업 지원 프로그램에 등록하기" 등을 씁니다.

 

그 후 우선순위를 매깁니다.

"영상 업로드가 1순위" , "일주일에 두 번 재무제표 공부하기 2순위" 이런 식으로요

 

그 후 이 세부사항들에 각각 얼마나 시간을 할애할 지, 언제까지 완료할지 명확한 기한을 정해둡니다.

 

이렇게 해서 1단계를 적습니다.

 

2. 계획을 반드시 문서화 하라. 입니다.

문서화의 첫 번째는 계획을 다시 하루 단위로 나누는 것입니다.

예를 들어 '매일 주기적으로 해야할 일' , '하루에 재무제표 공부 1시간하기' 등올 합니다.

 

이때 제일 중요한 것이 주어진 시간을 100% 다 활용하려고 하지 말고 60%로 활용하시길 바랍니다. 너무 막대한 계획을 세우지 말고 할 수 있는 만큼만 세우길 바랍니다.

 

교수의 조언에 따르면 부여된 모든 시간의 60%정도만 활용하는 것이 가장 효율적이라고 합니다. 나머지 40%는 다른 예상치 못한 일, 계획에서 초과한 일들을 커버하는 데 사용하도록 남기는 것입니다.

 

두 번째로 생략하거나 위임할 일을 결정하자입니다.

 

모든 계획을 세우고 문서화한 뒤, 꼭 하지 않아도 되거나 동료, 가족들에게 위임해도 될 일을 걸러내는 것입니다.

위임은 반드시 신중하게! 만족스럽지 못하거나 미처리된 일을 다시 우리가 해야할 수도 있기 때문입니다.

 

3. 우선순위를 확실히 분석하라.

성공한 사람들과 일반사람들의 차이를 보면 성공한 사람들은 확실한 목표를 설정하고 실천하는 것입니다 

만약 우선순위를 매길 수 없다면 ABC분석법을 활용합니다.

ABC분석이란 가장 중요한 일을 A에, 그 다음 중요한 일을 B에, 그다지 중요하지 않은 일을 C로 분류하는 것입니다.

A는 당신만이 이 일을 할 수 있으며, 타인에게 결코 넘겨줄 수 없는 일

B는 중요하지만 위임할 수 있으며, 완수했을 경우 도움이 되는 일

C는 당신에게 있어 가장 낮은 가치를 지닌 일

 

그런 다음 우리가 각각 A, B, C에 소요한 시간을 살펴봅니다.

이를 통해 업무의 중요도와 소요시간을 일치시키지 못했다는 것을 알 수 있습니다.

 

 

이제 이렇게 하면 삶의 질이 높아질 뿐만 아니라 성공에 한 걸음 한 걸음씩 가고 있는 것 같습니다.

 

 

책을 읽어서 터득하는 것도 좋지만 동영상을 보면서 터득하는 것도 좋다고 생각합니다.

 

이상포스터를 마치겠습니다.

입출력은 일부러 안 풀었었는데 원래 단계별로 가는 게 맞는 것 같습니다. 예전에 어려운 문제부터 풀려고하니 흥미가 떨어지면서 하고 싶지가 않았었죠 근데 지금은 뭔가 계단 오르듯이 하니 재밌네요. 잡소리는 그만 하고 바로 문제를 보시겠습니다.

 

www.acmicpc.net/problem/11720

 

11720번: 숫자의 합

첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.

www.acmicpc.net

문제

N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.

출력

입력으로 주어진 숫자 N개의 합을 출력한다.

 

 

 

배열로 해도 되구 아니면 그냥 해도 되겠네요.

두 개의 소스를 올리도록 하겠습니다.

 

일단 배열부터 보시죠. 배열 부분에서도 딱히 어려운 부분이 없습니다.

저기서 sum += arr[i] - '0' 이 부분이 제일 중요하네요.

#include <iostream>

using namespace std;

int main()
{
    int num1;
    cin >> num1;
    
    char arr[num1];

    cin >> arr;
    int sum = 0;

    for(int i=0; i<num1; i++)
    {
        sum += arr[i] - '0';   
    }

    cout<<sum<<endl;

    return 0;
}

 

다음으로 배열 없는 소스코드를 보시겠습니다.

#include <iostream>

using namespace std;

int main()
{
    int num1;
    cin >> num1;
    
    char num2; 

    int sum = 0;

    for(int i=0; i<num1; i++)
    {
        cin >> num2;
        sum += (num2 - '0');
    }

    cout<<sum<<endl;

    return 0;
}

 

 

이상포스터를 마치겠습니다. 감사합니다.

www.acmicpc.net/problem/11719

 

11719번: 그대로 출력하기 2

입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄이 주어질 수도 있고, 각 줄의 앞 뒤에 공백이

www.acmicpc.net

문제

입력 받은 대로 출력하는 프로그램을 작성하시오.

입력

입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄이 주어질 수도 있고, 각 줄의 앞 뒤에 공백이 있을 수도 있다.

출력

입력받은 그대로 출력한다.

 

 

 

이번에도 getline()을 사용해서 풀어보도록 하겠습니다. 만약 getline()에 대해서 모르신다면 제 그 전 글을 보고 와주시길 바랍니다.

 

그대로 출력하기 1에서 살짝만 수정하면 되는데요 어떤 것을 수정하면 될까요??

만약 30분넘게 고민하시지마시고 해석 풀이를 보면서 이해하시길 바랍니다.

 

바로 소스를 보시죠.

 

#include <iostream>
#include <string>

using namespace std;


int main() 
{
    string a; 
    int i;
    while(i < 100)
    {
        getline(cin, a);

        cout<<a<<endl;
        
        i++;
    }

    return 0;
}

 

만약 while(true)로 한다면 출력초과로 뜨실겁니다. 하지만, 저기 문제에서 100글자를 넘지 않아야 한다고 합니다. 그래서 while을 i < 100으로 줬습니다.

 

이상 포스터를 마치겠습니다.

www.acmicpc.net/problem/11718

 

11718번: 그대로 출력하기

입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시�

www.acmicpc.net

문제

입력 받은 대로 출력하는 프로그램을 작성하시오.

입력

입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시작하지 않고, 공백으로 끝나지 않는다.

출력

입력받은 그대로 출력한다.

 

 

소스를 보기 전에 저는 <iostream>에 정의된 cin의 멤버함수인 " getline() (std::cin.getline)을 쓰겠습니다

 즉, getline()은 띄어쓰기 부분까지 문자열을 저장할 수 있습니다.

 

바로 소스코드를 보시죠.

 

#include <iostream>
#include <string>

using namespace std;


int main() 
{
    string a; 

    while(true)
    {
        getline(cin, a);
        if(a == "")
            break;

        cout<<a<<endl;
    }

    return 0;
}

 

 

이상 포스터를 마치겠습니다.

문제

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 테스트 케이스의 개수 T가 주어진다.

각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)

출력

각 테스트 케이스마다 "Case #x: A + B = C" 형식으로 출력한다. x는 테스트 케이스 번호이고 1부터 시작하며, C는 A+B이다.

 

 

바로 소스코드 보면 될 것 같습니다.  11021번 문제와 되게 비슷합니다.

#include <iostream>

using namespace std;

int main()
{

  
    int T;
    cin >> T;
    int A, B;

    for(int i=1; i<=T; i++)
    {
        cin >> A >>B; 
        cout<<"Case #"<<i<<": "<<A<<" + "<<B<<" = "<<A+B<<endl;

      
      
    } 

    return 0;
}

 

 

딱히 어려운 게 없으니 이것도 넘어가겠습니다.

 

이상 포스터를 마치겠습니다.

바로 문제로 들어가겠습니다.

A+B - 7 

www.acmicpc.net/problem/11021

문제

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 테스트 케이스의 개수 T가 주어진다.

각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)

출력

각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다.

 

예제 입력 1

5

1 1

2 3

3 4

9 8

5 2

예제 출력 1

Case #1: 2

Case #2: 5

Case #3: 7

Case #4: 17

Case #5: 7

 

 

 

C++ 문제풀이

#include <iostream>

using namespace std;

int main()
{
    int T;
    int  A, B;
    cin >> T;
    for(int i=1; i<=T; i++)
    {
        cin >> A >>B;
        cout<<"Case #"<<i<<": "<<A+B<<endl;

    }
}

 

 

따로 설명드릴 게 없다고 생각합니다.

i = 1번째부터 시작하니깐 1 이고  i++후위 연산자를 위해 2로 증가하고 그 다음 3으로 증가하고 이렇게 쭈쭉가서 5까지 나옵니다.

 

이상 포스터를 마치겠습니다.

안녕하세요. 저는 사업에 관심이 많은 사람입니다. ㅋㅋㅋ 세상에서 하고 싶은 게 너무 많은 것 같아요.

이것도 하고 싶고 저것도 하고 싶고 원래 이러지 않았는데 책을 읽고 난 뒤 생각이 많이 바뀌었습니다.

여러분들도 생각과 꿈?을 찾고 싶으시면 책을 많이 읽으시면 이게 보이실겁니다.

 

책을 읽은 사람들의 공통점을 보면 차분하면서 자기 생각이 있고 성숙한 사람들이 많습니다. (제가 생각하기에는)

이 책은 아무래도 한 3탄? 정도까지 있을 것 같습니다. 저에게는 제일 중요한 책이라고 생각해서요.

 

 

어쨌든 "돈과 시간에서 자유로운 인생 1인 기업" 란 책을 리뷰로 써보겠습니다.(개인적인 생각이 많음.)

 

"행복은 돈으로 살 수 없지만, 가난으로도 살 수 없다.

 

여러분들은 기업을 차린다면 왜 하고 싶으세요?

돈을 많이 벌기 위해서? 라고 생각하시면 안 됩니다. 돈을 쫓아가다가는 끝은 아무래도 안 좋은 결말을 짓게 됩니다.

 

만약 자유로워지고 싶고 내가 하고 싶은 것을 맘대로 하고 싶고 좋아하는 일을 하고 싶어서 등을 생각 하시면 기업을 차려도 된다고 생각합니다 .

 

근데 좋아하는 일을 하는데 사업이 자꾸 망한다? 라고 생각하시면 "부의 추월차선"의 책을 보면 좋아하는 일보다는 "필요성"을 강조합니다.

 

만약 제가 글을 쓰는 것이 좋아합니다. 하지만, 글을 쓰는 것만 좋아하면 안 됩니다. 사람들이 무슨 글을 볼까? 이게 왜 필요할까? 라는 생각을 하셔야 됩니다. 모든 것이 좋다고 해서 하시면 안 되고 "필요성"을 찾기 바랍니다.

 

 

1인 기업을 하기 전에 만약 대학생이거나 특정 분야에서 "최고"가 되고 싶다고 생각하시는 분들은 "강점"을 최대한 채우시길 바랍니다.

 

"강점"? 각 사람마다 강점이 있습니다. 누구에게나 배울 점이 있고요. 만약 컴퓨터를 잘 하고 싶다면 컴퓨터를 최대한 노력해서 강점으로 만들어서 사업을 준비하십시오.

 

 

 

+ Recent posts