전체 글
[Python] math 모듈
math 모듈은 단순 python 연산을 넘어 조금 더 복잡한 산술 연산이 필요할 때 사용한다. import math를 통해서 사용할 수 있다. 상수 math.pi) 원주율 파이로, 3.141592653589793이다. math.e) 자연 상수 e로, 2.718281828459045이다. math.tau) 타우 상수로, 6.283185307179586이다. 함수 math.pow(x, y) x에 y 승을 계산한 결과값을 반환한다 math.pow(3, 2) # 9 math.sqrt(x) 주어진 인자의 제곱근의 값을 반환한다 math.sqrt(25) # 5.0 math.ceil(x) 주어진 인자의 소수전을 올림하여 정수로 변환한다 math.ceil(3.14) # 4 math.floor(x) 주어진 인자의 소숫..
[Python] for문 활용법
기본형(1) : for in for 변수 in 객체: 실행문 여기서 객체는 일반적으로 문자열, 리스트, 튜플, 딕셔너리를 의미함 변수는 객체의 첫 인덱스에 해당하는 값부터 마지막 인덱스에 해당하는 값까지 차례대로 정의됨 ex) for x in 'abc' 일 경우 x는 'a' 부터 시작하여 'b', 'c' 순으로 정의됨 ex) for x in [1, 2, 3] 일 경우 x는 1 부터 시작하여 2, 3 순으로 정의됨 ex) for x in {'one':1, 'two':2, 'three':3} 일 경우 x 는 'one' 부터 시작하여 'two', 'three' 순으로 정의됨 ex) for [x, y,] in [[1, 2], [3, 4], [5, 6]] 일 경우 x, y는 각각 1, 2 부터 시작하여 3, 4 ..
C++ 23 추가된 주요 기능들
1. if consteval - if constexpr의 consteval 버전이 생긴다. 2. Deducing this - 이제 클래스에서 똑같은 함수를 non-const, const 버전으로 두 가지를 만드느라 생기는 중복코드가 대폭 간결해진다. 3. auto(x), auto{x} - 함수 파라미터에서 rvalue (정확히는 prvalue)로 카피해 전달해주는 기능이다. 예제) 벡터에서 첫 원소와 똑같은 원소를 다 지우고 싶을 때 auto elem = v.front(); std::erase(v.begin(), v.end(), elem); 이 때 auto elem = v.front(); 에서 무조건 복사가 생긴다. C++ 23부터는 std::erase(v.begin(), v.end(), auto(v.f..
[C#] 람다식 (Lambda Expression)
람다식(Lambda)식은 접근자, 함수 이름, return문이 없는 익명 함수(anonymous function)다. 람다식을 사용하면 더 짧은 코드를 작성할 수 있으며 => 연산자를 사용한다. class Program { static int DoubleFunc(int num) { return num * 2; } static void Main(string[] args) { Console.WriteLine(DoubleFunc(10)); } } // 람다식 사용 class Program { static void Main(string[] args) { Func DoubleFunc = (num) => num * 2; int num = 10; Console.WriteLine(DoubleFunc(num)); } }..
[C#] 배열의 타입을 변경하는 방법 (제네릭 가능)
1. Array 클래스의 ConvertAll 메서드 public static TOutput[] ConvertAll ( TInput[] array, Converter converter); TInput[] array - 특정 타입으로 변환하고 싶은 배열을 전달한다. Convert converter - 배열의 요소를 특정 타입으로 변환하는 변환기를 전달한다. - TInput: 기존 배열의 타입을 설정한다. - TOutput: 변환하고 싶은 타입을 설정한다. ConvertAll() 메서드는 특정 타입으로 변환된 새로운 배열을 반환한다. 다음 예제는 string 타입의 배열을 int 타입의 배열로 변환된 새로운 배열을 반환한다 class Program { public static int stringToInt(st..
[골3] 2206 - 벽 부수고 이동하기 (최신화)
3차원 배열 / 메모리 많이 차지함#include #include #include #include #include #include #include #include #include using namespace std;using ll = long long;#pragma region 상하좌우 / 위치const pair dir[]{ { 1, 0 }, { -1, 0 }, { 0, -1 }, { 0, 1 },};#define _y first#define _x second#pragma endregion#pragma region 빠른 입출력#define FAST_IO() \{\ ios::sync_with_stdio(false);\ cin.tie(NULL); \ cout.tie(NULL); \}\#pragm..
[골3] 2143 - 두 배열의 합
#include #include #include #include #include #include #include #include #include using namespace std; using ll = long long; #pragma region 상하좌우 / 위치 const pair dir[] { { 1, 0 }, { -1, 0 }, { 0, -1 }, { 0, 1 }, }; #define _y first #define _x second #pragma endregion #pragma region 빠른 입출력 #define FAST_IO() \ {\ ios::sync_with_stdio(false);\ cin.tie(NULL); \ cout.tie(NULL); \ }\ #pragma endregion i..
[Unreal] 애님 블프 Idle 애니메이션 무작위 실행
언리얼에선 Random Sequence Player 함수가 존재하며 배열 범위 안에 무작위 인덱스 값을 뽑아준다. 일단 3개를 추가해줬다 마지막으로 shuffle mode 칸이 체크가 되어있어야 한다
[Python] 슬라이싱 (Slicing) 기본과 예제
정의슬라이싱(slicing) or 슬라이스(slice): 연속적인 객체들에(예: 리스트, 튜플, 문자열) 범위를 지정해 선택해서 객체들을 가져오는 방법 및 표기법을 의미한다.슬라이싱을 하면 새로운 객체를 생성하게 된다. 즉, 일부분을 복사해서 가져온다고 생각하면 된다.기본 사용법과 형태기본 형태a라는 연속적인 객체들의 자료구조(예: 리스트, 튜플, 문자열)가 있다고 가정을 했을 때 기본 형태는 아래와 같다.a[start : end : step]각각 start, end, step 모두 양수와 음수를 가질 수 있다.start: 슬라이싱을 시작할 시작위치다.end: 슬라이싱을 끝낼 위치로 end는 포함하지 않는다step: stride(보폭)라고도 하며 몇개씩 끊어서 가져올지와 방향을 정한다. 옵션이며 아래의 ..
[Python] time() 함수, 거리구하기 예제
우리는 시간(time) 모듈에 있는 time() 함수를 이용해 시스템 상의 시간을 얻을 수 있다. - time() 함수는 그리니치 표준시(이하 태평양 기준시, GMT) 1970년, 1월 1일, 00 : 00 : 00 부터 지금 현재 시간까지 흐른 시간을 초(second)와 밀리 초(millisecond) 단위로 표현한 시간을 반환하는 함수이다. - 이는 유닉스 시간(UNIX epoch)으로 널리 알려져 있으며, 1970년대가 유닉스 시스템이 처음 소개된 년도이다. 시간구하는 예제 프로그램 import time currentTime = time.time() #현재 시간(흐른시간) 구하기 totalseconds = int(currentTime) # 현재 흐른시간을 초 단위로 변환 currentsecond =..