전체 글

UCSD

[글인트] 3. UCSD

이 글은 24.12.31 ~ 25.02.17 충남대학교 글로벌 인재 트랙 후기입니다.두서없이 작성하는 점 양해 부탁드립니다. 드디어 본격적인 학교를 다닌 이야기다.UCSD는 University of California, San Diego의 약자다. UCSD에서 유명한 건축물 2개.왼쪽은 한국인 작가가 지은 것이다.오른쪽은 누가 지은게 아니고 원래부터 저렇게 생긴 돌이라는데... 구라였다.미국에 있을 땐 그렇게 들었는데 블로그 쓰면서 지금 찾아보니까 누가 지은거란다...ㅋ 퀄컴 연구소 방문과 트래킹... 힘들었다.그래도 노을은 예뻤다. 우리가 프로젝트를 하는 동안 있을 숙소다.복층 구조라 위에는 뒤지게 덥고 밑에는 뒤지게 춥다.아래층 사람들은 춥다고 난방을 틀고 위에층 사람들은 덥고 건조하다고 난방을 계속..

UCSD

[글인트] 2. 라스베이거스

이 글은 24.12.31 ~ 25.02.17 충남대학교 글로벌 인재 트랙 후기입니다.두서없이 작성하는 점 양해 부탁드립니다. 공항에서 반 죽어버린 나.사실 라스베이거스에 가기 전에 미국에서 독감에 걸렸다.진짜 뒤지게 아팠다.독감만 걸렸으면 괜찮았을텐데 임파선염까지 같이 와서 턱이 엄청 부었다.덕분에 뭘 씹지를 못해서 밥도 제대로 못 먹었다...아픈 것도 아픈건데 미국에서 병원 갈 줄은 꿈에도 몰랐다.미국 병원이 엄청 비싸단 건 알고 있었는데 독감 검사와 약만 샀는데 60만원이 들었다.거기에 deposit이라고 접수할 때 내는 돈이 있는데 이것도 20만원이었다.나중에 depost도 다 환불 받고, 충남대에서 들어놓은 여행자 보험으로 돈도 다 돌려받았지만 굉장히 힘들고 귀찮은 경험이었다.미국에서 절대 병원 ..

UCSD

[글인트] 1. 샌디에이고

이 글은 24.12.31 ~ 25.02.17 충남대학교 글로벌 인재 트랙 후기입니다.두서없이 작성하는 점 양해 부탁드립니다. 대전에서 인천공항까지 버스를 타고 이동했다.앞으로 미국에서 6주정도 생활하는데 설렘이나 걱정같은건 없었다.그냥 아무생각 없이 간 것 같다. 일단 공항에서 단체사진 한 컷.우리가 참여한 프로그램은 UCSD 퀄컴연구소에서 AI를 배우고 팀프로젝트를 하며 논문을 작성하는 프로그램이다.충남대학교만 참여한게 아니라 연세대, 숙명여대, 계명대, 안동대, 조선대, 한남대 총 48명(?)이 참여했다. (정확한 건 모르겠다.)그 중 충남대학교만 18명이라 나중에 기수장을 뽑을 때 당연하게도(?) 충남대학교 학생이 되었다. 비행기에서 주는 이어폰을 받았는데 두 쪽 모두 오른쪽 이어폰이었다. (운수 ..

모각코/2024 하계 [석드류]

[석드류] 6. Go 사용해서 백준 문제 풀기

이제 Go에 대한 기초적인 지식을 습득했으니까 실전에 적용해 볼 시간이다.그러기 위해선 가장 쉬운 방법이 문제를 푸는 것이다.이때까지 배운 지식들로 풀 수 있을만한 문제를 백준에서 찾았다.  백준 1015번 문제인 수열 정렬이다.수열이 주어지고 이 수열이 정렬되었을 때 각 숫자의 인덱스 위치를 출력하면 되는 문제다. package mainimport "fmt"func main() { var n int fmt.Scan(&n) var a []Node for i := 0; i a[j].data) || (i > j && a[i].data == a[j].data) { index++ } } a[i].index = index } for i := 0; i 나는 이렇게 풀었다.알고리즘이 좋은지는 모르..

모각코/2024 하계 [석드류]

[석드류] 5. Go 프로토콜 및 형식

JSONJSON(JavaScript Object Notation)은 Javascript 객체 문법으로 구조화된 데이터를 표현하기 위한 문자 기반의 표준 포맷이다.장점은 모두 유니코드여서 사람이 읽기 쉽고 간결하게 표현되어있다.Go 언어로 JSON을 만들 수 있다. 그것을 Marshalling이라고 한다.package mainimport ( "fmt" "encoding/json")type Person struct { Name string Age int}func main() { p := Person{Name: "John", Age: 25} byteData, err1 := json.Marshal(p) // Go to JSON if err1 != nil { fmt.Println(err1) return }..

모각코/2024 하계 [석드류]

[석드류] 4. Go 복합 데이터 유형

배열package mainimport ( "fmt")func main() { var x [5]int // 초기화 하지 않으면 0으로 초기화 됨 var y [5]string // 초기화 하지 않으면 ""으로 초기화 됨 fmt.Println(x) // [0 0 0 0 0] fmt.Println(y) // [ ] var z [5]int = [5]int{1, 2, 3, 4, 5} fmt.Println(z) // [1 2 3 4 5] a := [...]int{1, 2, 3, 4, 5} // 배열의 크기를 ... 으로 지정하면 초기화 값의 개수만큼 크기가 정해짐 for index, value := range a { fmt.Println(index, value) /* 0 1 1 2 2 3 3..

모각코/2024 하계 [석드류]

[석드류] 3. Go 기본 데이터 유형

포인터포인터는 메모리에 있는 일부 데이터에 대한 주소다.& : 변수나 함수의 주소를 반환하는 연산자* : 주소의 데이터를 반환하는 연산자 (&의 반대)var x int = 1var y intvar ip *intip = &xy = *ip // y == 1 new()new()는 변수를 만드는 또 다른 방법이다.변수를 반환하는 대신 변수에 대한 포인터를 반환하는 함수다.따라서 new()는 변수를 만들고 해당 변수에 대한 포인터를 반환한다.new()를 사용하면 변수가 기본적으로 0으로 초기화된다.ptr := new(int)*ptr = 3 변수의 범위변수의 범위는 코드에서 변수에 접근할 수 있는 위치다.따라서 변수 범위는 코드에서 변수 참조가 확인되는 방식을 정의한다.var x = 1func f() { fm..

모각코/2024 하계 [석드류]

[석드류] 2. Go 기본 문법

Hello, World! 출력하기// test.gopackage mainimport "fmt"func main() { fmt.Println("Hello, World!")}위 코드는 Go에서 Hello, World!를 출력하는 간단한 코드다.항상 main이라는 패키지가 하나 있어야 하고, 거기서 실행이 시작된다.main package는 main() 함수가 있어야 하고, main()이 코드가 실행이 시작되는 곳이다.파이썬처럼 세미콜론(;)을 안 붙여도 된다. Import다른 패키지에 액세스하는 데 사용되는 키워드다.fmt(format)을 import 해야 Println이라는 함수를 사용할 수 있다. import는 package를 가져오는 것과 같다. Go ToolGo 소스 코드를 관리하는 데 사용되는 일반적..