전체 글86 알고리즘 스터디 Google Kickstart Round C 첫번째 문제인 Record Breaker입니다 총 N일동안 테마파크를 열고, i번째 날짜의 방문자 수는 Vi입니다. Record breaking은 이전의 방문자 최대치보다 크고, 그 다음날 보다 방문자가 많아야 합니다. 여기서 Record breaking 날짜 수를 구하는 문제입니다. C++를 사용한 제 풀이입니다. #include #include #include #include #include using namespace std; int n; void solve() { cin >> n; int result = 0, t = -1; vector a(n, 0); for (int i = 0; i > a[i]; } for (int i =.. 2020. 8. 4. 알고리즘 스터디 Google Kick start 2020 Round C 1번째 문제, Countdown 입니다. 자연수 K와 N개의 자연수가 주어지고 i번째 배열을 Ai라고 할 때, A의 부분 배열이 K부터 1까지 -1씩 등차가 이루어지는 것의 개수를 구하는 것입니다. C++를 사용한 제 풀이입니다 #include #include #include #include #include using namespace std; int n, k, t; void solve() { cin >> n >> k; vector a(n, 0); int result = 0; t = k; for (int i = 0; i > a[i]; if (a[i] != t) { t = k; } if (a[i] == t) { --t; .. 2020. 8. 3. 람다표현식에서 기본 갈무리 모드는 피하자 C++11의 기본 갈무리 모드는 두가지로 하나는 참조에 의한 갈무리 모드, 또 하나는 값에 의한 갈무리 모드이다. 기본 참조에 의한 갈무리 모드는 참조 대상을 잃을 위험이 있으며, 값에 의한 갈무리 모드 또한 참조가 대상을 잃는 문제를 갖고있으며, 자기 완결적이지 않은 경우가 있다. 참조 갈무리를 사용하는 클로저는 지역 변수 또는 람다가 정의된 범위에서 볼 수 있는 매개변수에 대한 참조를 가지게 된다. 람다에 의해 생성된 클로저의 수명이 그 지역변수나 매개변수의 수명보다 오래 지속되면, 클로저 안의 참조는 대상을 잃는다. 예를들어 int 하나를 받아 그 값이 필터를 만족하는지 뜻하는 bool 하나를 돌려주는 필터링 함수들을 담는 컨테이너가 있다고 하자 using FilterContainer = std::.. 2020. 8. 3. 알고리즘 스터디(미완) Google kick start 2020 Round B 3번째 문제 Robot Path Decoding입니다 로봇이 각각 NSEW방향으로 한 칸씩 움직이고 (1, 1)에서 출발한다. 전체 크기는 가로세로 각각 10^9크기의 그리드이다. 또한 X(Y)일때 X는 2~9까지의 숫자이고, 괄호 안의 Y를 X번 반복한다. 예시) 2(NWE) is equivalent to NWENWE. 3(S2(E)) is equivalent to SEESEESEE. EEEE4(N)2(SS) is equivalent to EEEENNNNSSSS. 가로 10^9에서 E방향으로 한칸 움직이면 1이 된다. 1에서 W방향으로 한칸 움직이면 10^9가 된다. NS도 같다. 여기서 로봇의 최종 좌표를 구하는 문제입니다. C++를 사용한 제 .. 2020. 7. 30. 완벽전달이 실패하는 경우들 2 중복적재된 함수 이름과 템플릿 이름 1편에서의 함수 f와 마찬가지로 fwd를 거쳐 인수를 전달하려는 대상 함수의 행동 방식을 커스텀 하기위해 f가 하나의 함수를 받아서 그 함수를 호출한다고 하자. 그함수가 int를 받고 int를 돌려준다고 하자 void f(int (*pf)(int));// pf는 processing function void f(int pf(int));// 더 간단한 비 포인터 구문 여기에 중복 적재된 processVal 함수가 있다고 하자 int processVal(int value); int processVal(int value, int priority); f(processVal);// 가능하다 f는 함수 포인터를 기대하지만 processVal은 함수 포인터가 아니다. 함수또한 아니다.. 2020. 7. 30. 알고리즘 스터디 Google Kick Start Round B 2번째 문제 Bus Routes입니다 총 N개의 버스가 있고 1번부터 N번버스까지 순서대로 타야합니다. i번째 버스는 Xi의 배수인 날짜마다 운행합니다. 하루에 탈수있는 버스는 무제한입니다. D일 까지 여정을 마쳐야 하고 가능한 늦게 출발하려고 할때 언제 출발하면 되는가 하는 문제입니다. Limits Time limit: 10 seconds per test set. Memory limit: 1GB. 1 ≤ T ≤ 100. 1 ≤ Xi ≤ D. 1 ≤ N ≤ 1000. It is guaranteed that it is possible for Bucket to finish her journey by day D. Test set 1 1 ≤ D ≤ 100. Test.. 2020. 7. 29. 이전 1 2 3 4 5 6 7 8 ··· 15 다음