반응형

@notepad_jj2

츄르사려고 코딩하는 코집사입니다.


0 = not cute / 1 = cute 성공출처분류

시간 제한메모리 제한제출정답맞은 사람정답 비율

1 초 2 MB 8937 5919 5487 67.516%

문제

준희는 자기가 팀에서 귀여움을 담당하고 있다고 생각한다. 하지만 연수가 볼 때 그 의견은 뭔가 좀 잘못된 것 같았다. 그렇기에 설문조사를 하여 준희가 귀여운지 아닌지 알아보기로 했다.

입력

첫 번째 줄에 설문조사를 한 사람의 수 N (1 ≤ N ≤ 101, N은 홀수)가 주어진다.

다음 N개의 줄에는 각 줄마다 각 사람이 설문 조사에 어떤 의견을 표명했는지를 나타내는 정수가 주어진다. 0은 준희가 귀엽지 않다고 했다는 뜻이고, 1은 준희가 귀엽다고 했다는 뜻이다.

출력

준희가 귀엽지 않다는 의견이 더 많을 경우 "Junhee is not cute!"를 출력하고 귀엽다는 의견이 많을 경우 "Junhee is cute!"를 출력하라.


N = int(input())

A = []
for i in range(N) : 
    A.append(int(input()))

one_count = A.count(1)
zero_count = A.count(0)

if one_count > zero_count :
    print("Junhee is cute!")
else :
    print("Junhee is not cute!")

 

반응형
반응형

@notepad_jj2

츄르사려고 코딩하는 코집사입니다.


Kaggle - Learn Intro to Deep Learning(1) A Single Neuron

Use TensorFlow and Keras to build and train neural networks.

 

1. 배울 것들

- fully-connected neural network 아키텍쳐 생성

- Neural nets를 이용하여 회귀와 분류 ML 문제 적용

- stochastic gradient descent로 neural nets 훈련(확률적 경사하강법)

- dropout과 batch nomalization 이외 다른 것들 performance 향상

 

2. What is Deep Learning?

- 최근에 AI 분야에서 딥러닝의 분야가 두각되고 있음

- 예를 들어, 자연어 처리 번역, 이미지 인식, 인공지능 수준의 게임 등이 있다.

 

3. Deep Learning?

- 딥러닝은 기계 학습에 대한 접근법으로서 계산이 깊이 쌓이는 것이 특징

- 이러한 깊이 있는 계산은 딥러닝 모델이 가장 까다로운 실생활의 data set에서 발견되는 복잡하고 계층적인 패턴의 종류를 분리할 수 있게 해준다.

- 딥러닝 기술의 힘과 확장성을 통해 신경망은 딥러닝의 정의 모델이 되었다.

- 신경망은 뉴런으로 구성되어 있으며, 각 뉴런은 개별적으로 간단한 연산만 수행한다.

- 신경망의 힘은 이 뉴런들이 형성할 수 있는 연결의 복잡함에서 나온다.

- 즉, 복잡함에 따라 신경망은 더욱 강해진다.

 

4. The Linear Unit

- 아래의 그림에서 Linear Unit은 1개의 1개의 입력(X)을 받아 가중치와 bias로 계산이 된다.

- y = wx + b

- b는 bias(편향)이라고 부르는 특병한 종류의 가중치이다.

- bias는 어떤 input data와 연관이 없다.

- 대신에, diagram에 1을 넣어 뉴런에 도달하는 값이 b가 되도록 한다. 즉, 1*b = b 가 되도록 한다.

- bias는 뉴런이 입력과 독립적으로 출력을 수정할 수 있게 할 수 있다.

- y는 궁극적으로 출력되는 뉴런 값이다.

출처 : https://www.kaggle.com/ryanholbrook/a-single-neuron

 

5. Multiple Inputs

- y = w0x0 + w1x1 + w2x2 + b

- 3 input and 1 bias

 

 

반응형
반응형

@notepad_jj2

츄르사려고 코딩하는 코집사입니다.


 실패분류

시간 제한메모리 제한제출정답맞은 사람정답 비율

0.5 초 (추가 시간 없음) 256 MB 42406 19904 15381 49.086%

문제

정수를 저장하는 큐를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오.

명령은 총 여섯 가지이다.

  • push X: 정수 X를 큐에 넣는 연산이다.
  • pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.
  • size: 큐에 들어있는 정수의 개수를 출력한다.
  • empty: 큐가 비어있으면 1, 아니면 0을 출력한다.
  • front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.
  • back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.

입력

첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 않은 명령이 주어지는 경우는 없다.

출력

출력해야하는 명령이 주어질 때마다, 한 줄에 하나씩 출력한다.


N = int(input())
Que = []
for i in range(N) :
    A = input().split()
    if A[0] == 'push' : Que.append(A[1])
    elif A[0] == 'pop' : 
        if Que : print(Que.pop(0))
        else : print(-1)
    elif A[0] == 'size' : print(len(Que))
    elif A[0] == 'empty' :
        if len(Que) == 0 : print(1)
        else : print(0)
            
    elif A[0] == 'front' :
        if len(Que) == 0 : print(-1)
        else : print(Que[0])
    
    elif A[0] == 'back' :
        if len(Que) == 0 : print(-1)
        else : print(Que[-1])

위의 코드를 넣고 돌리면 시간초과가 뜬다.

그래서, stdin을 사용해야 한다.

 

위의 코드에서 from sys import stdin과

 

N 값을 입력 받을 때 int(stdin.readline()), A = stdin.readline().split()으로 코드를 교체하였다.

 

from sys import stdin

N = int(stdin.readline())
Que = []
for i in range(N) :
    A = stdin.readline().split()

    if A[0] == 'push' : Que.append(A[1])

    elif A[0] == 'pop' : 
        if Que : print(Que.pop(0))
        else : print(-1)

    elif A[0] == 'size' : print(len(Que))

    elif A[0] == 'empty' :
        if len(Que) == 0 : print(1)
        else : print(0)
            
    elif A[0] == 'front' :
        if len(Que) == 0 : print(-1)
        else : print(Que[0])
    
    elif A[0] == 'back' :
        if len(Que) == 0 : print(-1)
        else : print(Que[-1])
반응형

+ Recent posts