https://school.programmers.co.kr/learn/courses/30/lessons/147354?language=cpp
#include <string>
#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;
int column;
bool cmp(const vector<int>& v1, const vector<int>& v2) {
if(v1[column] == v2[column]) {
return v1[0] > v2[0] ? true : false;
} else {
return v1[column] < v2[column] ? true : false;
}
}
int solution(vector<vector<int>> data, int col, int row_begin, int row_end) {
int answer = 0;
column = col - 1;
/*
테이블의 튜플을 col번째 컬럼의 값을 기준으로 오름차순 정렬을 하되,
만약 그 값이 동일하면 기본키인 첫 번째 컬럼의 값을 기준으로 내림차순 정렬합니다.
*/
sort(data.begin(), data.end(), cmp);
/*
정렬된 데이터에서 S_i를 i 번째 행의 튜플에 대해
각 컬럼의 값을 i 로 나눈 나머지들의 합으로 정의합니다.
*/
int len = data[0].size();
for(int i = row_begin; i <= row_end; ++i) {
int totalSum = 0;
for(int j = 0; j < len; ++j) {
totalSum += (data[i - 1][j] % i);
}
answer ^= totalSum;
}
return answer;
}
'CodingTest > 99클럽2024스터디' 카테고리의 다른 글
99클럽 코테 스터디 8일차 TIL, 프로그래머스 / 최소 힙 (0) | 2024.07.30 |
---|---|
99클럽 코테 스터디 8일차 TIL, 프로그래머스 / 두 큐 합치기 (0) | 2024.07.29 |
99클럽 코테 스터디 5일차 TIL, 프로그래머스 / 베스트 앨범 (0) | 2024.07.27 |
99클럽 코테 스터디 4일차 TIL, 프로그래머스 / 문자열 압축 (0) | 2024.07.25 |
99클럽 코테 스터디 3일차 TIL, 프로그래머스 / 숫자 문자열과 영단어 (0) | 2024.07.25 |