목록전체 글 (222)
피너클의 it공부방
망할 세팅에서 하루를 보냈다.1. cannot import name skipper 이거에서 먼저 시간 날려먹었다. 파이썬 버전 3.6으로 올리고 gym버전을 0.9.5로 낮추니 에러가 안뜬다. 2. No module named 'ppaquette_gym_doom' 이걸 도데체 어디서 받아야 하는건지 pip install ppaquette_gym_doom 이걸하면 오류가 뜬다. 내용 보면 doom_py받다가 오류 뜬거 같아서 pip install doom-py해주면 또 에러 뜬다. doom_py로 해도 에러 뜬다. conda install meznom::boost-python이거 한번 콘다cmd에 넣어줬따.conda install conda-forge::sdl2이것도 넣어줬다. ---------------..

t = torch.tensor([[1, 2, 3], [4, 5, 6]])위를 출력하면위에 처럼 나온다. t = torch.tensor([[1, 2, 3], [4, 5, 6]]).gather(0, torch.tensor([[0, 1]]))위를 출력하면위에처럼 1, 5가 나온다.위와 같이 0차원에차례대로 0번이랑 1번을 가져온것이다.t = torch.tensor([[1, 2, 3], [4, 5, 6]]).gather(1, torch.tensor([[0, 1]]))그럼 0차원을 1로 바꾸면 어떻게 될까위에 처럼1과 2가 나오게 된다. 그렇다면 4, 5, 6은 출력하지 못하는 걸까?t = torch.tensor([[1, 2, 3], [4, 5, 6]]).gather(1, torch.tensor([[0, 1], ..

t = torch.tensor([0.2, 1.122, 1.9234])위의 t를 출력하면위의 값이 그대로 나오고 t = torch.tensor([0.2, 1.122, 1.9234]).type(torch.int64)위에 type(torch.int64)를 붙이면위처럼 정수가 나온다.1.9도 1로 나오는걸 보면 무조건 내림을 하는것 같다.

import torch.nn as nnclass Network(nn.Module): def __init__(self): super(Network, self).__init__() print("태어났다.") def forward(self): print("날 불렀는가")위와 같이 코드를 짠 상태에서brain = Network();Network를 생성하면다음과 같이 출력된다.brain = Network();brain()다음같이 생성하고 brain을 호출하면다음과 같이 출력된다.forward는 호출시 작동되는것 같다.

위와 같은 그래프가 있다라 해보자위에서 강한 연결 요소를 찾아보면아래 처럼 찾을 수 있다.첫번째 정점에서 두번째 정점으로 간뒤 다시 첫번째 정점으로 돌아올수있으면 강한 연결 요소다.위에서 2에서 3으로 이동한뒤 3 -> 4 -> 2 이렇게 이동할수있다.5에서 6으로 이동하고 6 -> 5로 이동할 수 있으니 5, 6도 강한 연결 요소다. 그렇다면위에서는 강한 연결 요소가 어떻게 될까?1,2 | 2,3 이 아닌 1, 2, 3 이 강한 연결 요소다.강한 연결 요소는 가능한 최대의 크기여야한다. 이제 위의 그래프에서 강한 연결 요소를 구하는 과정을 살펴보자.먼저 배열들을 준비해줄거다.dfsn은 각 정점의 번호를 저장한다. 위의 그래프는 숫자로 이루어져 있지만 숫자가 아닌 ABC같은 경우도 있을 수 있으니 깊이 ..
https://www.acmicpc.net/problem/2295 투포인터로 풀었다.int n;unordered_map visited;int arr[1001];int sum[1000001];int len = 0;선언 변수들이다. n = 1000 이므로 삼중 반복문을 돌리면 시간이 1000 ^ 3이 되어버려 제한시간안에 끝내지 못한다.그렇기에 이전에 arr에서 합을 따로 하나 구해놓을 것이다. 그것이 sum이다.visited는 sum안에 겹치는 숫자가 들어가지 않게 해준다.len은 sum의 길이다. cin >> n; for (int i = 0; i > arr[i]; } sort(arr, arr + n);값들을 입력받은뒤 정렬해준다. 반드시 정렬해줘야햔다. for (int..

계속 실행하면 아래 프로그램이 실행되고 있다고는 뜨는데게임에 들어가면 다시 튕겨져 나와지고를 반복했다.그런데 디스플레이 해상도를 낮춰버리니까 작동이 잘된다.
https://www.acmicpc.net/problem/7785그냥 set을 이용해 구현하는 문제다.#include #include #include using namespace std;int n;set s;string a, b;int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> n; for (int i = 0; i > a >> b; if (b == "enter") { s.insert(a); } else { s.erase(a); } } set::reverse_iterator iter; for (iter = s.rbegin(); iter != s.rend(); iter++) { cout 전체코드다. 들어와야 나갈수 있..

위에서 breakout.js에 getcontext가 있는데 자꾸 오류가 났다.그런데 스크립트를 canvas 아래로 내려버리니까 오류가 사라졌다.아마 캔버스가 선언되지 않았는데 자바스크립트에서 가져오려고 해서 오류가 난거같다.
https://www.acmicpc.net/problem/9506 수학문제다.int n;bool b[50001];int arr[50001];int len;n은 입력받는 숫자이고b는 약수인지 아닌지 기록하는 bool배열arr은 약수가 담기는 배열, len은 arr의 길이다. while (true) { cin >> n; if (n == -1) break; for (int i = 2; i 미리 세팅을 해둔다.for (int i = 2; i n/2까지만 반복문을 돌리며 만약 n이 i로 완전히 나누어떨어지고 약수로 체크가 되지 않았다면i와 n를 i로 나눈 수를 기록해주고 arr에 둘다 기록해준뒤 sum에 더해준다.arr[len] = 1;len += 1;sort(arr, arr + len);반복문에서 나오면 ..