github 100mb용량 제한
에셋 페키지 프로젝트세팅스 3개만 올리자 unity로 협업 할때는(나머지는 자동생성됨) -> gitignore 사용
같은 곳을 수정하면 conflict 발생
find 계열 함수는 없는 취급하고 작성하라(성능이나 안정성 면에서 안좋은 경우가 많다-> 앞에있는
오브젝트 배열을 전부 돌면서 찾기 때문에)
linq도 성능저하(오브젝트 많을때) 몇개없을 때는 써도 됨 아니면 걍 배열 사용
안쓰는(비어있는) 함수는 제때제때 지워두는 것이 성능 향상에 도움이 된다.
ex) 비어있는 업데이트 함수
계속 컴포넌트를 얻어오지말고 필요한 데이터를 한번 저장했다가 활용하는 캐싱을 이용하라!
ex) Bullet bullet = GetCompnent();
연쇄호출을 피하자(코드가 길어지면 보기힘들어지고 계산결과가 null일수가 있다.)
문제 설명
문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.
제한 사항
str은 길이 1 이상인 문자열입니다.
-내 풀이-
using System;
public class Solution
{
public string solution(string s)
{
string answer = "";
char[] temp = s.ToCharArray();
// 배열을 오름차순으로 정렬함
Array.Sort(temp);
// 배열을 뒤집는다 = 내림차순으로 바뀜
Array.Reverse(temp);
answer = new string(temp);
return answer;
}
}
문제 설명
새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이용료가 100이었다면 2번째에는 200, 3번째에는 300으로 요금이 인상됩니다.
놀이기구를 count번 타게 되면 현재 자신이 가지고 있는 금액에서 얼마가 모자라는지를 return 하도록 solution 함수를 완성하세요.
단, 금액이 부족하지 않으면 0을 return 하세요.
제한사항
놀이기구의 이용료 price : 1 ≤ price ≤ 2,500, price는 자연수
처음 가지고 있던 금액 money : 1 ≤ money ≤ 1,000,000,000, money는 자연수
놀이기구의 이용 횟수 count : 1 ≤ count ≤ 2,500, count는 자연수
-내 풀이-
using System;
class Solution
{
public long solution(int price, int money, int count)
{
long sumPrice = 0;
for(int i = 1; i < count+1; i++)
{
sumPrice += price*i;
}
if(money - sumPrice >= 0)
return 0;
else
return (long)Math.Abs(money - sumPrice);
}
}
-다른 사람의 풀이-
using System;
class Solution
{
public long solution(int price, int money, int count)
{
long result = price * ((long)count * (1 + count) / 2);
if(result <= money) {
return 0;
}
else
{
return result - (long)money;
}
}
}
나는 반복문을 사용하였는데 위와 같이 수학에 자신이 있다면
등차수열의 합 공식을 이용하면 반복문을 사용하지 않고도 문제 풀이를 할 수 있다.
등차수열 같은경우에는 프로그래밍에 정말 자주 쓰이므로 어느정도 알아두자!!