Global scope

Որոշ դեպքերում, արագ կոդ գրելու նպատակով, կարելի է օգտվել global scope-ից և որոշ փոփոխականներ պահել այնտեղ։ Այդ փոփոխականները հասանելի կլինեն բոլոր իրենցից ներքև գտնվող ֆունկցիաներին։ Այդ թվում և main ֆունկցիային։
#include <iostream>
using namespace std;

int n;

void some_function() {
	++n;
	cout << n << endl;
}

int main() {
	cin >> n;
	some_function();
	some_function();
	some_function();
	some_function();
	return 0;
}
Այս ծրագիրը հայտարարում է մի փոփոխական n, որն ունի int տիպ և main-ում ներմուծում է այն։ Ենթադրենք, որ այս անգամ ներմուծել ենք 10։ Դրանից հետո main-ից մենք կանչում ենք some_function()-ը, որը մեծացնում է n-ի արժեքը, իսկ հետո տպում այն։ Քանի որ n-ը հայտարարված է some_function-ից առաջ, այն հասանելի է some_function-ին և some_function-ը սկզբում n-ը դարձնում է 11 իսկ հետո տպում դրա արժեքը։
Նույնը կատարվում է երկրորդ անգամ some_function-ը կանչելուց։ Այն սկզբում մեծացնում է n-ի արժեքը դարձնելով այն 12, իսկ հետո տպում այն։ Երրորդ անգամ some_function-ը տպում է 13, ու վերջում 14։
 
Այսպիսով, վերևում հայտարարված փոփոխականները հասանելի են ֆունկցիաների մեջ։ Եթե n-ը հայտարարված լիներ some_function-ից հետո և main-ից առաջ, ապա այն հասանելի չէր լինի some_function-ում։ Կարող եք ինքներդ փորձել և տեսնել թե ինչ է ասում C++-ի compiler-ը։
 
Վարժություն՝
Ունենալով q հատ հարցում, որոնցից ամեն մեկում գրված է երկու թիվ, անհրաժեշտ է պարզել ամեն զույգի մեջից մեծագունը և վերջում տպել թե դեպքերից քանիսում է մեծագունը երկրորդը։
Մուտքի առաջին տողում տրված է q բնական թիվը (1 ≤ q ≤ )։ Դրան հետևում են q տողեր, որոնցից յուրաքանչյուրում գրված է մի զույգ a և b թվեր։
Ելքի առաջին q տողում անհրաժեշտ է տպել այդ զույգերից յուրաքանչյուրից մեծագույնի արժեքը։ Եվ վերջին տողում անհրաժեշտ է տպել թե դրանցից քանի դեպքում էր երկրորդ թիվը ավելի մեծ առաջինից։
Մուտք
Ելք
4 1 2 2 1 0 -5 5 10
2 2 0 10 2
Հուշում՝ Կարող եք սահմանել int max ֆունկցիա, որը ոչ միայն կվերադարձնի մեծագույնը, այլ նաև կգումարի 1 մի գլոբալ փոփոխականի, եթե երկրորդ թիվը մեծ է առաջինից։

Constraints

Time limit: 0.4 seconds

Memory limit: 512 MB

Output limit: 10 MB

To check your solution you need to sign in
Sign in to continue