일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 셀레니움
- node.js
- 실시간
- 서이추 자동
- 국세청
- socket.io
- 서로이웃추가 자동
- 네이버 블로그 이웃추가 자동
- 네이버 블로그
- Selenium 네이버 블로그
- 웹소켓
- 크롤러
- rabbitmq
- nodejs
- 서이추 매크로
- 서로이웃추가 매크로
- 웹소켓 서버
- 스크래퍼
- 크롤링
- 실시간 웹소켓 서버
- kwoss2341
- Node
- Selenium
- Java
- amqplib
Archives
- Today
- Total
defaultK
[프로그래머스] 카카오 캠핑 c++ 본문
https://programmers.co.kr/learn/courses/30/lessons/1833
코딩테스트 연습 - 캠핑
캠핑 무지를 돌보느라 지친 콘은 한적한 시골의 한 캠핑장에 놀러 갔다. 캠핑장은 텐트를 칠 수 있는 넓은 평지를 제공하고 있는데, 이 평지에는 이미 캠핑장에서 설치해 놓은 n개의 쐐기가 박혀
programmers.co.kr
기본적인 아이디어.
1. x축으로 내림차순정렬.
2. [ 정점: i (x,y) ( 0<= i < n ) ]에 관하여 [정점: i] 와[ 정점: it (tx,ty) ( i< it <n ) ] 사이 내부의 쐐기가 없어야 한다.
3. [ 정점: j (jx,jy) ( i< j <it ) ] 의 좌표 (jx,jy) 가 (x,y) , (tx,ty) 사이에 하나라도 존재하지 않으면 answer ++;
#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;
bool cmp(vector <int> a, vector <int> b)
{
return a[0]<b[0];
}
//https://programmers.co.kr/learn/courses/30/lessons/1833
// 전역 변수를 정의할 경우 함수 내에 초기화 코드를 꼭 작성해주세요.
int solution(int n, vector<vector<int>> data) {
int answer = 0;
sort(data.begin(),data.end(),cmp);
int x,y;
int mx,my;
int px,py;
int tx,ty;
for(int i=0; i<n; i++)
{
x=data[i][0];
y=data[i][1];
for(int j=i+1; j<n; j++)
{
tx=data[j][0];
ty=data[j][1];
mx=min(x,tx);
my=min(y,ty);
px=max(x,tx);
py=max(y,ty);
if(mx==px||my==py) continue;
int sw=0;
int jx,jy;
for(int k=i+1; k<j; k++)
{
jx=data[k][0];
jy=data[k][1];
if(jx>mx&&jx<px&&jy>my&&jy<py)
{
sw=1;
break;
}
}
if(sw==0) answer++;
}
}
return answer;
}
'알고리즘 ( C++ ) > 프로그래머스' 카테고리의 다른 글
[프로그래머스] (그리디) 큰 수 만들기 c++ (0) | 2021.01.31 |
---|---|
[프로그래머스] (최소히프) 더 맵게 c++ (0) | 2021.01.30 |
[프로그래머스] (DFS/BFS) 카카오 경주로 건설 c++ (0) | 2021.01.25 |
[프로그래머스] (문자열, 정렬) 카카오 파일명 정렬 c++ (0) | 2021.01.24 |
[프로그래머스] (BFS) 카카오 블록 이동하기 c++ (1) | 2021.01.22 |
Comments