음.. goto문을 쓰는건 질문자분의 성향이지만 저로서는 문법기능을 완벽히 무시하는 goto문 기능을 쓰는건 별로 안좋다고생각합니다.. 13번 줄까지는 문제없고
int check[42] = { 0 }; 배열을 만들어서
check[arr[i]]++; 한뒤 0~ 41까지 for문으로 돌려가며 1 이상인 부분들을 하나씩 더한 값을 내놓는 알고리즘은 어떨까요??
3052번 - 나머지
문제에서 원하는 것은 42로 나눈 나머지들 중 서로 다른 값이 몇개 있는가 입니다
입력으로 주어진 숫자들을 42로 나누면 0에서부터 41까지
총 42개의 숫자들이 나올수 있죠?
int check[42] = { 0 }; 에는 그 숫자들의 개수가 들어갈겁니다.
ex ) check[0] 에는 42로 나눈 나머지가 0인 숫자가 확인 될 시에 check[0]의 값을 1 더해주는거죠
따라서 check[0]에서부터 check[41]까지 값은 0 또는 자연수가 될 것이고,
저희가 원하는 것은 check[i]가 자연수라면 새로운 나머지값이 생긴 겁니다.
check[i] 값이 0이라면? 입력으로 주어진 수를 42로 나눈 수가 i인 경우가 없었다는 거죠
댓글을 작성하려면 로그인해야 합니다.
ijs5252 4년 전
어디가 틀린지 모르겠어요
잘못된 부분 알려주세요ㅠ