#pragma optimization_level 3 #pragma GCC optimize("Ofast,no-stack-protector,unroll-loops,fast-math,O3") #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx") #include<bits/stdc++.h> #define f first #define s second #define sym(s) s = "#" + s + "#"; #define all(x) (x).begin(), (x).end() #define alll(x,n) x+1, x+n+1 #define newl cout<<"\n"; #define foo(i,a,n) for(ll i = (a); i <= n; i++) #define deb1(a) cout<<a<<"\n"; #define deb2(a,b) cout<<a<<" "<<b<<"\n"; #define deb3(a,b,c) cout<<a<<" "<<b<<" "<<c<<"\n"; #define deb4(a,b,c,d) cout<<a<<" "<<b<<" "<<c<<" "<<d<<"\n"; #define debp(a) cout<<a.f<<" "<<a.s<<"\n"; #define debv(a) for(auto it: a)cout<<it<<" ";newl; #define debm(a) for(auto it: a)cout<<"{"<<it.f<<","<<it.s<<"}, ";newl; #define deb1d(a,n) foo(i,1,n)cout<<a[i]<<" ";newl; #define deb2d(a,n,m) foo(i,1,n){foo(j,1,m){cout<<a[i][j]<<" ";}newl;} using namespace std; using ll = long long; using ld = long double; const ll MOD = 1e+9 + 7; const ll INF = LLONG_MAX; const int N = (int)2e+5 + 8; ld xc, yc, r; vector<pair<ld,ld>> vertices; void get_other_vertices(ld x, ld y){ cout << "\n\t\tfor (" << x <<", "<<y<<" ): \n"; cout << "\t" << x << " " << y <<"\n"; cout << "\t" << -x << " " << y <<"\n"; cout << "\t" << x << " " << -y <<"\n"; cout << "\t" << -x << " " << -y <<"\n"; cout << "\t" << y << " " << x <<"\n"; cout << "\t" << -y << " " << x <<"\n"; cout << "\t" << y << " " << -x <<"\n"; cout << "\t" << -y << " " << -x <<"\n"; } void MAIN(int tc) { cout << "Enter the center(x, y): "; cin >> xc >> yc; cout << "Enter the radius(R): "; cin >> r; ld curpk = 1 - r; ld nxtpk; ld curx = 0, cury = r; ld nxtx, nxty; int k = 0; // region 1 cout << "K\tPk\tnX\tnY\n"; cout << "---------------------------------\n"; while (true) { if (curpk < 0) { nxtx = curx + 1; nxty = cury; cout << k << "\t" << curpk << "\t" << nxtx << "\t" << nxty << "\n"; nxtpk = curpk + 2 * nxtx + 1; } else { nxtx = curx + 1; nxty = cury - 1; cout << k << "\t" << curpk << "\t" << nxtx << "\t" << nxty << "\n"; nxtpk = curpk + 2 * nxtx - 2 * nxty + 1; } vertices.push_back({nxtx, nxty}); curpk = nxtpk; curx = nxtx; cury = nxty; k += 1 ; if (curx >= cury) { break; } } for(auto [x, y]: vertices){ get_other_vertices(x, y); } } int main() { // ios:: sync_with_stdio(false); // cin.tie(nullptr); cout.tie(nullptr); // cout << fixed; cout << setprecision(10); int test_cases = 1; //cin>>test_cases; for (int i = 1; i <= test_cases; i++) { MAIN(i); } }
Write, Run & Share C++ code online using OneCompiler's C++ online compiler for free. It's one of the robust, feature-rich online compilers for C++ language, running on the latest version 17. Getting started with the OneCompiler's C++ compiler is simple and pretty fast. The editor shows sample boilerplate code when you choose language as C++
and start coding!
OneCompiler's C++ online compiler supports stdin and users can give inputs to programs using the STDIN textbox under the I/O tab. Following is a sample program which takes name as input and print your name with hello.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string name;
cout << "Enter name:";
getline (cin, name);
cout << "Hello " << name;
return 0;
}
C++ is a widely used middle-level programming language.
When ever you want to perform a set of operations based on a condition If-Else is used.
if(conditional-expression) {
//code
}
else {
//code
}
You can also use if-else for nested Ifs and If-Else-If ladder when multiple conditions are to be performed on a single variable.
Switch is an alternative to If-Else-If ladder.
switch(conditional-expression){
case value1:
// code
break; // optional
case value2:
// code
break; // optional
......
default:
code to be executed when all the above cases are not matched;
}
For loop is used to iterate a set of statements based on a condition.
for(Initialization; Condition; Increment/decrement){
//code
}
While is also used to iterate a set of statements based on a condition. Usually while is preferred when number of iterations are not known in advance.
while (condition) {
// code
}
Do-while is also used to iterate a set of statements based on a condition. It is mostly used when you need to execute the statements atleast once.
do {
// code
} while (condition);
Function is a sub-routine which contains set of statements. Usually functions are written when multiple calls are required to same set of statements which increases re-usuability and modularity. Function gets run only when it is called.
return_type function_name(parameters);
function_name (parameters)
return_type function_name(parameters) {
// code
}