Skip to content

Instantly share code, notes, and snippets.

Avatar

PedroRacchetti

View GitHub Profile
View pointinpolygon.cpp
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN = 1e5 + 10;
struct Pt {
ll x, y;
Pt(ll _x = 0, ll _y = 0) : x(_x), y(_y) {}
Pt operator+(const Pt& o) { return Pt(x+o.x, y+o.y); } // soma de vetores
Pt operator-(const Pt& o) { return Pt(x-o.x, y-o.y); } // subtração de vetores
View pointinpolygon.cpp
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN = 1e5 + 10;
struct Pt {
ll x, y;
Pt(ll _x = 0, ll _y = 0) : x(_x), y(_y) {}
Pt operator+(const Pt& o) { return Pt(x+o.x, y+o.y); } // soma de vetores
Pt operator-(const Pt& o) { return Pt(x-o.x, y-o.y); } // subtração de vetores
View interest.cpp
struct Pt {
double x, y;
Pt(double _x = 0, double _y = 0) : x(_x), y(_y) {}
Pt operator+(const Pt& o) { return Pt(x+o.x, y+o.y); } // soma de vetores
Pt operator-(const Pt& o) { return Pt(x-o.x, y-o.y); } // subtração de vetores
Pt operator*(double b) { return Pt(x*b, y*b); } //retorna o vetor escalado por b
void operator+=(const Pt& o) { x += o.x, y += o.y; } // somar vetores com o operador +=
void operator-=(const Pt& o) { x -= o.x, y -= o.y; } // subtrair vetores com o operador -=
void operator*=(double b) { x*=b, y*=b; } //retorna o vetor escalado por b
double dot(const Pt& o) { return x*o.x + y*o.y; } // dot - produto escalar
View rotacionar.cpp
Pt rotate(double ang /* angulo, em radianos*/){
double xb = x * cos(ang) - y * sin(ang);
double yb = x * sin(ang) + y * cos(ang);
return Pt(xb,yb);
}
View cifra.cpp
#include<bits/stdc++.h>
using namespace std;
vector<int> alfabeto; //manter o alfabeto em um vector
vector<pair<int, int> > vogais; //guardar as vogais
//como vector de pair, que guarde seu indice
string s;
vector<char> ans;
bool isvogal(int i){
View NOIC CH nlog.cpp
//Código por Pedro Bignotto Racchetti
//O(nlogn)
#include<bits/stdc++.h>
using namespace std;
struct Pt {
int x, y;
Pt(int _x = 0, int _y = 0) : x(_x), y(_y) {}
View NOIC CH nlog
//Código por Pedro Bignotto Racchetti
//O(nlogn)
#include<bits/stdc++.h>
using namespace std;
struct Pt {
int x, y;
Pt(int _x = 0, int _y = 0) : x(_x), y(_y) {}
View estrada.cpp
#include<bits/stdc++.h>
using namespace std;
const int MAXN = 1e4 + 10;
double leste; // a distância da fronteira leste
int n;
double cidades[MAXN];
int main(){
scanf("%lf", &leste);
scanf("%d", &n);
for(int i = 1; i <= n; i++){
View bolachas.cpp
#include<bits/stdc++.h>
using namespace std;
int tot; //total de inteiros sendo analisados
string s;//string auxiliar para ler a entrada
multiset<int> menores, maiores;
int main(){
while(cin >> s){ //leremos até acabar a entrada
if(s[0] == '#'){
View extrato.cpp
#include<bits/stdc++.h>
using namespace std;
typedef long long ll; //Os valores das somas podem passar de 2*10^9,
//então usaremos essa abreviação pra long long
const int MAXN = 2e5 + 10;
set<ll> s;
ll t[MAXN];
int main(){