본문 바로가기

Algorithm

[알고리즘/파이썬] 자료구조 - 배열과 리스트 | 11720번: 숫자의 합, 1546번: 평균

반응형

두슬

 

 

배열의 특징

: 배열은 메모리에 연속된 공간에 값이 채워져있는 형태의 자료구조

  1. 인덱스를 사용해 값에 바로 접근가능하다. (장점)
  2. 값을 삽입하거나 삭제하려면 해당 인덱스 주변값을 이동시켜야 한다.
  3. 배열의 크기는 한번 선언하면 크기를 변경할 수 없다. (단점)

 

 리스트의 특징

: 리스트는 노드(값과 포인터를 묶음)를 포인터로 연결한 자료구조

  1. 인덱스가 없어 순서대로 값에 접근해야한다.-속도가 느리다. (단점)
  2. 포인터로 연결되어 있어 삽입삭제 속도가 빠르다.
  3. 리스트의 크기가 가변적이다. -선언할때 크기지정필요x  (장점)

 

⚠ 파이썬에서는 배열과 리스트를 구분하지 않는다. ⚠

파이썬의 '리스트'는 배열의 특징까지 모두 가지도록 구현됨.

위에서 언급한 (장점)만 가져왔다.

 

 

 

 


 

 

 

11720번: 숫자의 합

 

11720번: 숫자의 합

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

www.acmicpc.net

반응형

문제

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

입력

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

출력

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

정답

n = input()

print(sum(map(int,input())))

 

 


 

 

1546번: 평균

 

1546번: 평균

첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보

www.acmicpc.net

문제

세준이는 기말고사를 망쳤다. 세준이는 점수를 조작해서 집에 가져가기로 했다. 일단 세준이는 자기 점수 중에 최댓값을 골랐다. 이 값을 M이라고 한다. 그리고 나서 모든 점수를 점수/M*100으로 고쳤다.

예를 들어, 세준이의 최고점이 70이고, 수학점수가 50이었으면 수학점수는 50/70*100이 되어 71.43점이 된다.

세준이의 성적을 위의 방법대로 새로 계산했을 때, 새로운 평균을 구하는 프로그램을 작성하시오.

입력

첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보다 크다.

출력

첫째 줄에 새로운 평균을 출력한다. 실제 정답과 출력값의 절대오차 또는 상대오차가 10-2 이하이면 정답이다.

정답

n=input()
mylist=list(map(int,input().split()))
mymax=max(mylist)
sum=sum(mylist)
print(sum*100/mymax/int(n))

 

 

 

 

반응형