Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- using namespace std;
- struct vald{
- char name[10];
- int all=0; // visi
- int dby2=0; // is 2
- };
- void read(int &d, int &k, struct vald valdovai[]);
- void write(int d, int k, struct vald valdovai[]);
- int highest(int d, int k, struct vald valdovai[]);
- int main(){
- int d, k; // d- dievai, k - kauliukai
- vald valdovai[50];
- read(d, k, valdovai);
- write(d, k, valdovai);
- return 0;
- }
- void read(int &d, int &k, struct vald valdovai[]){
- int temp;
- ifstream fr;
- fr.open("U2.txt");
- fr>>d>>k;
- for(int x=0; x<d; x++){
- fr.ignore();
- fr.get(valdovai[x].name,10);
- for(int y=0; y<k; y++){
- fr >>temp;
- valdovai[x].all+=temp;
- if(temp%2==0)
- valdovai[x].dby2++;
- }
- }
- fr.close();
- }
- void write(int d, int k, struct vald valdovai[]){
- ofstream out;
- out.open("U2_out.txt");
- out<<valdovai[highest(d, k, valdovai)].name;
- out<<valdovai[highest(d, k, valdovai)].all;
- out.close();
- }
- int highest(int d, int k, struct vald valdovai[]){
- int max_value=0, numbofval=0, pasikart[50];
- for(int x=0; x<d; x++){
- if(valdovai[x].all>valdovai[max_value].all)
- max_value=x;
- }
- for(int x=0; x<d; x++){
- if(valdovai[x].all==valdovai[max_value].all){
- pasikart[numbofval] = x;
- numbofval++;
- }
- }
- if(numbofval)
- return max_value; // jeigu nera pasikartojanciu
- else{
- int daug_l=pasikart[0];
- for(int x=0; x<numbofval; x++){
- if(valdovai[pasikart[x]].dby2>valdovai[daug_l].dby2)
- daug_l=x;
- }
- for(int x=0; x<numbofval; x++){
- if(valdovai[pasikart[x]].dby2==valdovai[daug_l].dby2){
- return pasikart[x]; // jeigu su keliais lyginiais arba pagal sarasa
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment