| | *1. Решение задачи с функцией - Слова массива, состоящие из различных букв* |
| | *1. Решение задачи с функцией - Слова массива, состоящие из различных букв*\\ |
| {code:title=razl_bukvi.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
| | {code:title=razl_bukvi.cpp\|borderStyle=solid}\#include <bits/stdc++.h>using namespace std; |
| |
| string Razl(string s) |
| { |
| string w; |
| int d,j; |
| |
| d=s.length(); |
| w=s[0]; |
| for (j=1; j<d; j++) |
| if (w.find(s[j])>d) w+=s[j]; |
| return w; |
| } |
| |
| int main() |
| { |
| string s[100]; |
| int n,i; |
| cin >> n; |
| for (i=0; i<n; i++) cin >> s[i]; |
| for (i=0; i<n; i++) |
| if (Razl(s[i])==s[i]) cout << s[i] << endl; |
| | }{code}{*}2. Решение задачи с процедурой* |
| | } |
| {code} |
| *2. Решение задачи с процедурой* |
| Предложение => массив слов |
| | \\ \\ |
| {code:title=predloch-massiv.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
| | {code:title=predloch-massiv.cpp\|borderStyle=solid}\#include <bits/stdc++.h>using namespace std; |
| |
| string s,m[100]; |
| int n; |
| |
| void Razbit() |
| { |
| string p; |
| int i,d; |
| s+=' '; d=s.length(); n=0; p=""; |
| for (i=0; i<d; i++) |
| if (s[i]!=' ') p+=s[i]; |
| else { |
| m[n]=p; |
| n++; |
| p=""; |
| } |
| } |
| |
| int main() |
| { |
| getline(cin,s); |
| Razbit(); |
| for (int i=0; i<n; i++) cout << m[i] << endl; |
| | }{code}{*}3. Булевая функция, получает в качестве параметра целое x* |
| | } |
| {code} |
| *3. Булевая функция, получает в качестве параметра целое x* |
| \\ |
| |
| | *Количество простых, кубы которых меньше n* |
| | *Количество простых, кубы которых меньше n*\\ |
| {code:title=kubi<n.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
| | {code:title=kubi<n.cpp\|borderStyle=solid}\#include <bits/stdc++.h>using namespace std; |
| |
| bool Prime(int x) |
| { |
| for (int i=2; i<x; i++) |
| if ((x%i)==0) return false; |
| return true; |
| } |
| |
| int main() |
| { |
| string is,s; |
| int n,x,ans; |
| cin >> n; |
| ans=0; |
| for (x=2; x*x*x<n; x++) |
| if (Prime(x)) ans++; |
| cout << ans; |
| } |
| |
| /* |
| 1001 - 4 |
| 126 - 3 |
| 125 - 2 |
| 10 - 1 |
| 7 - 0 |
| | */{code}{*}4. Возвращение значений параметров из процедуры Split* |
| | */ |
| {code} |
| *4. Возвращение значений параметров из процедуры Split* |
| \\ |
| |
| | &x1 - передаём в процедуру адрес переменной x1 |
| | &x1 - передаём в процедуру адрес переменной x1\\ |
| {code:title=split.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
| | {code:title=split.cpp\|borderStyle=solid}\#include <bits/stdc++.h>using namespace std; |
| |
| void Split(int x, int &x1, int &x2, int &x3) |
| { |
| x1=x%10; |
| x3=x/100; |
| x2=(x/10) % 10; |
| } |
| |
| int main() |
| { |
| int i,i1,i2,i3, |
| j,j1,j2,j3, |
| n,a2,a3; |
| cin >> n; |
| a2=0; |
| for (i=10; i<100; i++) |
| for (j=10; j<100; j++) |
| { |
| i1=i/10; i2=i%10; |
| j1=j/10; j2=j%10; |
| if ((i1+i2==j1+j2) && (abs(i-j)>a2)) |
| a2=abs(i-j); |
| |
| }; |
| if (n==2) cout << a2; |
| a3=0; |
| for (i=100; i<1000; i++) |
| for (j=100; j<1000; j++) |
| { |
| Split(i,i1,i2,i3); |
| Split(j,j1,j2,j3); |
| if (((i1+i2+i3)==(j1+j2+j3)) && (abs(i-j)>a3)) |
| a3=abs(i-j); |
| }; |
| if (n==3) cout << a3; |
| | }{code}{*}5. Три лучших рейтинга (10_BY. Спартакиада)* |
| | } |
| {code} |
| *5. Три лучших рейтинга (10_BY. Спартакиада)* |
| \\ \\ |
| {code:title=spartakiada.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
| | {code:title=spartakiada.cpp\|borderStyle=solid}\#include <bits/stdc++.h>using namespace std; |
| |
| int r[100000],n; |
| |
| int nMaxR() |
| { |
| int max,i,num; |
| max=0; |
| for (i=0; i<n; i++) |
| if (r[i]>max) { max=r[i]; num=i; }; |
| return num; |
| } |
| |
| int main() |
| { |
| int x,y,z,a,b,c,i,n1,n2,n3; |
| freopen("input.txt","r",stdin); |
| freopen("output.txt","w",stdout); |
| cin >> x >> y >> z; |
| cin >> n; |
| for (i=0; i<n; i++) |
| { |
| cin >> a >> b >> c; |
| r[i]=a*x+b*y+c*z; |
| } |
| n1=nMaxR(); r[n1]=0; |
| n2=nMaxR(); r[n2]=0; |
| n3=nMaxR(); |
| cout << n1+1 << ' ' << n2+1 << ' ' << n3+1; |
| | }{code}{*}6. Функция и процедура (2010_BY. Бактериалное родство)* |
| | } |
| {code} |
| *6. Функция и процедура (2010_BY. Бактериалное родство)* |
| \\ |
| {code:title=bakterrodstvo.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
| | {code:title=bakterrodstvo.cpp\|borderStyle=solid}\#include <bits/stdc++.h>using namespace std; |
| |
| string a,b; |
| int n; |
| |
| int Degree() |
| { |
| int i,k; |
| k=0; |
| for (i=0; i<n; i++) |
| if (a[i]==b[i]) k++; |
| return k; |
| } |
| void Shift() |
| { |
| a=a[n-1]+a.substr(0,n-1); |
| } |
| |
| int main() |
| { |
| int i,max,k; |
| freopen("input.txt","r",stdin); |
| freopen("output.txt","w",stdout); |
| cin >> n; |
| cin >> a; |
| cin >> b; |
| max=0; |
| for (i=0; i<n; i++) |
| { |
| k=Degree(); |
| if (k>max) max=k; |
| Shift(); |
| } |
| cout << max; |
| | }{code} |
| | } |
| {code} |