summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSanto Cariotti <sancn@live.com>2017-01-21 21:12:47 +0100
committerGitHub <noreply@github.com>2017-01-21 21:12:47 +0100
commit4ddc5ccd4da258ef567a5de35baa2fbc08d45804 (patch)
tree422e68f78cee4ce5c03c6da318bfcbc4387baaab
parent23c0329fc8e0749dcb2a48e218617b39db654909 (diff)
Planet reg02
-rw-r--r--planet.cc72
1 files changed, 72 insertions, 0 deletions
diff --git a/planet.cc b/planet.cc
new file mode 100644
index 0000000..c61e95b
--- /dev/null
+++ b/planet.cc
@@ -0,0 +1,72 @@
+#include <iostream>
+#include <fstream>
+#include <sstream>
+
+using namespace std;
+
+int main()
+{
+ ifstream in;
+ ofstream out;
+ in.open("input.txt");
+ out.open("output.txt");
+
+ char ch;
+ string numero, val[2];
+ int oraVuota = -1, giorno[96], i = 0, c = 0;
+
+ for(int j = 0; j < 96; j++) giorno[j] = -1;
+
+ getline(in, numero);
+ int N;
+ istringstream(numero) >> N;
+
+ int ore[N][2];
+
+ while(!in.eof())
+ {
+ in.get(ch);
+
+ if(ch == '\n') {
+ val[0] = "";
+ val[1] = "";
+ i = 0;
+ c++;
+
+ continue;
+ }else if(ch == ' '){
+ i++;
+ }else {
+ val[i] += ch;
+ istringstream(val[i]) >> ore[c][i];
+ }
+
+ }
+
+ i = 0;
+ while(i < N){
+ if(ore[i][0] > ore[i][1]){
+ for(int j = ore[i][0]; j < ore[i][1] || j < 96; j++) giorno[j] = 0;
+ for(int k = ore[i][1]-1; k >= 0; k--) giorno[k] = 0;
+ }else {
+ for(int k = ore[i][0]; k < ore[i][1]; k++) giorno[k] = 0;
+ }
+ i++;
+ }
+
+ for(i = 0; i < 96; i++) {
+ if(giorno[i] == -1) {
+ oraVuota = i;
+ break;
+ }
+
+ //cout << i << " " << giorno[i] << endl;
+ }
+
+ cout << oraVuota << endl;
+
+ in.close();
+ out.close();
+
+ return 0;
+}