본문 바로가기
반응형

전체 글183

[Baekjoon] C++ 10871번 X보다 작은 수 https://www.acmicpc.net/problem/10871 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net input n과 x를 입력 받은 뒤, n번만큼 while문을 반복하는 동안 입력 받은 수 a가 x보다 작다면 출력한다. 수열로 입력받아 배열에 따로 저장하지 않아도 되며, for문을 한 번만 반복하여 비교하는 것이 가능하므로 비용과 코드 가독성 측면에서 더 좋은 코드를 작성 할 수 있다. [전체 코드] #include using namespace std; int main() { i.. 2021. 5. 21.
[C#] object와 var의 차이 object와 var 모두 명시적인 타입의 선언 없이도 변수를 선언하는 것이 가능하다. 그러나 두 선언은 사용에 있어 완전히 다르다. 이 둘의 가장 큰 차이는, 어떤 방식으로 값을 저장하냐에 있다. object 먼저 object는 박싱과 언박싱을 통해 값을 저장한다. 값을 박싱 한 뒤 heap에 저장해두고, stack에 해당 주소를 저장하고 있다가 필요할 때마다 참조해서 쓰는 방식이다. 따라서 기존의 값과 타입이 변경되어도, 의도한대로 값이 저장되는 것을 확인 할 수 있다. 타입이 변경되었다하더라도, 기존의 박싱된 상자를 지우고 새로 박싱하여 힙에 저장한 뒤 주소를 바꾸면 되기 때문이다. int a = 30; object b = (object)a; WriteLine("a: " + a); WriteLine.. 2021. 5. 20.
[C#] var 키워드 var var는 컴파일러가 데이터형식을 알아서 파악하여 선언해주는 형식이다. int와 string 같은 명시적 형식으로 선언하지 않아도, var를 이용하여 변수를 선언하면 컴파일러가 자동으로 해당 변수의 형식을 지정해준다. 만약 int로 선언했을 경우, 어떤 인자가 들어와도 int형으로 들어오게 된다. WriteLine("int로 선언"); int a_int = 1; //int b_int = "안녕"; int c_int = 'c'; int d_int = (int)3.14; WriteLine("a: " + a_int); //WriteLine("b: " + b_int); WriteLine("b: 선언 불가"); WriteLine("c: " + c_int); WriteLine("d: " + d_int); 하지.. 2021. 5. 20.
[Baekjoon] C++ 1546번 평균 https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net vector에 기존 점수를 입력 받으며, max score를 체크한다. vector vec; int n = 0; cin >> n; int max = 0; for (int i = 0; i > score; vec.push_back(score); if (max < score) max = score; } 조건에 따라 기존 점수 /max 한 점수.. 2021. 5. 20.
[Baekjoon] C++ 1924번 2007년 https://www.acmicpc.net/problem/1924 1924번: 2007년 첫째 줄에 빈 칸을 사이에 두고 x(1 ≤ x ≤ 12)와 y(1 ≤ y ≤ 31)이 주어진다. 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다. www.acmicpc.net 아래는 2007년 1월 달력이다. 1월 1일이 월요일인 것을 시작으로, 12월 31일까지 멈추지 않고 일주일(7일)이 돌아가며 나타난다. 즉, 1월 1일에서 7의 배수만큼 흐른 날은 무조건 '월요일'이다. 예를 들어, 7일 후인 8일 역시 월요일이며, 21(7*3)일 후인 22일 역시 월요일이다. 일주일은 멈추지 않고 돌아가므로, 35(7*5)일 후인 2월.. 2021. 5. 20.
[C#] object (boxing/unboxing) object object 형식은 .NET Framework에서 제공하는 어떤 데이터든지 다룰 수 있는 데이터 형식이다. C#은 object가 모든 데이터를 다룰 수 있도록 기본 데이터 형식 뿐 아니라 모든 복합 데이터 형식, 사용자 정의 형식까지도 object 형식으로부터 *상속 받도록 개발되었다. * 상속: 부모 데이터 형식의 유산을 자식이 물려받는 것. 부모로부터 데이터와 메소드를 물려받은 자식은 부모와 똑같이 동작하는 것이 가능 int나 double 등의 값 형식은 스택에 데이터를 할당한다. 하지만 object 형식은 참조형식이므로 힙에 데이터를 할당하며, 값 형식의 데이터를 힙에 할당하기 위해 "박싱(boxing)" 기능과 "언박싱(unboxing)" 기능을 제공한다. object식에 값 형식의 .. 2021. 5. 20.
[Baekjoon] C++ 2839번 설탕 배달 https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 이 문제는 두 가지 방법으로 해결 할 수 있다. 방법 1 규칙을 구해서 구현할 수 있다. [규칙] 먼저 N이 10 이상일 경우, 끝자리가 0 또는 5라면 3kg는 1개 끝자리가 3 또는 8이라면 3kg는 2개 끝자리가 1 또는 6이라면 3kg는 3개 끝자리가 2 또는 7이라면 3kg는 4개 가 필요하다는 규칙을 발견할 수 있다. ​ 따라서 3kg가 몇개가 필요한 지 먼저 구해주면, 나머지 값은 5의 배수가 .. 2021. 5. 20.
[Baekjoon] C++ 2558번 A + B -2 https://www.acmicpc.net/problem/2558 2558번: A+B - 2 첫째 줄에 A, 둘째 줄에 B가 주어진다. (0 < A, B < 10) www.acmicpc.net 기존의 A+B보다 제한 시간이 짧아지고 입력받는 A와 B의 값이 제한되었다. [참고] https://while1.tistory.com/entry/BOJ-C-1000번-AB [BOJ] C++ 1000번 A+B https://www.acmicpc.net/problem/1000 1000번: A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 백준을 시작하는 사람들이 가장 처음 접할 문제! 예전에 네이버 블.. while1.tistory.com [전체 코드] #.. 2021. 5. 19.
[Baekjoon] C++ 10430번 나머지 https://www.acmicpc.net/problem/10430 10430번: 나머지 첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000) www.acmicpc.net 첫째 줄에 (A+B)%C, 둘째 줄에 (A%C + B%C)%C, 셋째 줄에 (A×B)%C, 넷째 줄에 (A%C × B%C)%C를 출력한다. [전체 코드] #include using namespace std; int A, B, C = 0; int main() { cin >> A >> B >> C; cout 2021. 5. 19.
반응형