|
Thread Rules 1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution. 2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20) 3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible. 4. Use [code] tags to format code blocks. |
x2-x1 btw!
or for general cases |x1-x2| but this problem said x2 must be larger
anyways as you said, k1 is getting closer to k2 each iteration by v1-v2 steps. so the gap continuously closes by a certain amount. Because v1>v2, kangaroo 1 will eventually outpace kangaroo 2.
ex. lim->infinity (v1p+x1)/(v2p+x2) = v1/v2, p=number of iterations since v1>v2, kangaroo1 always outpaces kangaroo2 in regards to infinity (sorry if I'm explaining the math in a bad way I'm honestly not a math guy)
SO, all we need to do is check if the gap eventually reaches 0 for the overlap. since the difference of x1 and x2 is the starting gap we need to cover, and the difference of v1 and v2 is how much that gap decreases by, we just need to see if they divide evenly. If they do, we know that the gap ends up at 0 at some point.
Hope that made sense. I'm also very sad that there is probably so many more efficient ways to solve this. I might look at this more tomorrow unless someone smart can explain a better solution so I can just learn from that.
edit:
nvm I passed the last test case.
all I had to do was check for more of the bad inputs in the beginning. I guess that last test case was just checking for that. So this is actually one of the optimal ways?
|
Apologies for the typo. Hopefully I didn't mislead anyone. Edited.
This solution is O(1). There isn't an efficiency class faster than this.
|
On April 05 2017 15:44 frogmelter wrote: Apologies for the typo. Hopefully I didn't mislead anyone. Edited.
This solution is O(1). There isn't an efficiency class faster than this.
yeah you're right its crazy how i've been conditioned by these questions to just assume i can't get the optimal algorithm on first go
|
Thanks guys!
When I wrote the equation first time I was stuck on p as I really did not know what it actually indicates.
Now all make sense. By solving: v2p+x2 = v1p+x1 -> we get that p = x2-x1/v1-v2
since p as @dsyxelic said stands for number of iterations, it must be an integer value. Otherwise it means they won't meet at all.
|
I'm working on a python project, where a user uploads an excel sheet and it generates a powerpoint. Right now it only works on my machine and I want to package it and distribute it. However If I use py2app it seems like everytime I want to use new data I have to repackage the app. What is a better way of doing this?
I was thinking of using flask and heroku but im a novice to python
|
On April 06 2017 03:17 MysteryMeat1 wrote: I'm working on a python project, where a user uploads an excel sheet and it generates a powerpoint. Right now it only works on my machine and I want to package it and distribute it. However If I use py2app it seems like everytime I want to use new data I have to repackage the app. What is a better way of doing this?
I was thinking of using flask and heroku but im a novice to python If that's the case you're probably doing something wrong. Also, what are users uploading the document to if you're not running a web server?
|
|
On April 06 2017 18:32 Nesserev wrote: Yeah, py2app, py2exe, PyInstaller, cx_Freeze, etc. should be used for generating and distributing standalone executables (.exe) targeting end users, but are a bad fit/unnecessary in almost any other situation, especially for a web server where you have control over your own environment.
@MysteryMeat1 If you're new to this, maybe you should check out pythonanywhere.com instead of Heroku. I've never used Heroku, but the setup seems a bit more complicated/steep compared to pythonanywhere.com, which I've used, and is really easy to use. Honestly, there's a basic thought problem at the very beginning here. Heroku isn't an alternative to py2app. It's an alternative to AWS, Azure, etc.
It's still not clear to me whether mysterymeat is interested in making a standalone app or a web app. In the former, it's not py2app that is failing him, but the way in which he inputs the spreadsheet (hardcoded?!) In the latter, he should study the various options for hosting his app. But they are entirely different kettles of fish.
|
On April 06 2017 04:46 Prillan wrote:Show nested quote +On April 06 2017 03:17 MysteryMeat1 wrote: I'm working on a python project, where a user uploads an excel sheet and it generates a powerpoint. Right now it only works on my machine and I want to package it and distribute it. However If I use py2app it seems like everytime I want to use new data I have to repackage the app. What is a better way of doing this?
I was thinking of using flask and heroku but im a novice to python If that's the case you're probably doing something wrong. Also, what are users uploading the document to if you're not running a web server?
Right now the only user is me. I have the script in the same directory as the excel file so it just grabs it and runs it. However when I package the exe its not grabbing the excel file. Did I just set it up wrong?
On April 06 2017 18:43 Acrofales wrote:Show nested quote +On April 06 2017 18:32 Nesserev wrote: Yeah, py2app, py2exe, PyInstaller, cx_Freeze, etc. should be used for generating and distributing standalone executables (.exe) targeting end users, but are a bad fit/unnecessary in almost any other situation, especially for a web server where you have control over your own environment.
@MysteryMeat1 If you're new to this, maybe you should check out pythonanywhere.com instead of Heroku. I've never used Heroku, but the setup seems a bit more complicated/steep compared to pythonanywhere.com, which I've used, and is really easy to use. Honestly, there's a basic thought problem at the very beginning here. Heroku isn't an alternative to py2app. It's an alternative to AWS, Azure, etc. It's still not clear to me whether mysterymeat is interested in making a standalone app or a web app. In the former, it's not py2app that is failing him, but the way in which he inputs the spreadsheet (hardcoded?!) In the latter, he should study the various options for hosting his app. But they are entirely different kettles of fish.
I'm interested in whatever's easier. If the data in the excel sheet is constantly changing it seems like a standalone app isn't the correct solution? Unless I missed out on a way to select the excel file in the app.
Right now its just wb = load_workbook(filename.xlss)
The preference for the standalone app was that I could just have people download the exe and not have to look into web hosting
|
On April 07 2017 00:38 MysteryMeat1 wrote:Show nested quote +On April 06 2017 04:46 Prillan wrote:On April 06 2017 03:17 MysteryMeat1 wrote: I'm working on a python project, where a user uploads an excel sheet and it generates a powerpoint. Right now it only works on my machine and I want to package it and distribute it. However If I use py2app it seems like everytime I want to use new data I have to repackage the app. What is a better way of doing this?
I was thinking of using flask and heroku but im a novice to python If that's the case you're probably doing something wrong. Also, what are users uploading the document to if you're not running a web server? Right now the only user is me. I have the script in the same directory as the excel file so it just grabs it and runs it. However when I package the exe its not grabbing the excel file. Did I just set it up wrong? Show nested quote +On April 06 2017 18:43 Acrofales wrote:On April 06 2017 18:32 Nesserev wrote: Yeah, py2app, py2exe, PyInstaller, cx_Freeze, etc. should be used for generating and distributing standalone executables (.exe) targeting end users, but are a bad fit/unnecessary in almost any other situation, especially for a web server where you have control over your own environment.
@MysteryMeat1 If you're new to this, maybe you should check out pythonanywhere.com instead of Heroku. I've never used Heroku, but the setup seems a bit more complicated/steep compared to pythonanywhere.com, which I've used, and is really easy to use. Honestly, there's a basic thought problem at the very beginning here. Heroku isn't an alternative to py2app. It's an alternative to AWS, Azure, etc. It's still not clear to me whether mysterymeat is interested in making a standalone app or a web app. In the former, it's not py2app that is failing him, but the way in which he inputs the spreadsheet (hardcoded?!) In the latter, he should study the various options for hosting his app. But they are entirely different kettles of fish. I'm interested in whatever's easier. If the data in the excel sheet is constantly changing it seems like a standalone app isn't the correct solution? Unless I missed out on a way to select the excel file in the app. Right now its just wb = load_workbook(filename.xlss) The preference for the standalone app was that I could just have people download the exe and not have to look into web hosting You'll want to use some type of input. The most basic form would be:
filename = input("Enter your filename: ") try: wb = load_workbook(filename) except: print("Problem loading file", filename, "Please make sure you entered a valid Excel file") exit(1)
Or as a command line argument: https://www.tutorialspoint.com/python/python_command_line_arguments.htm
|
It's assembly time in my current programming class. For the current project we have to convert a couple different C programs to assembly.
I am sure I will need help from you guys
|
I switched it to using the tKinter library, allowing the user to select the excel file that they want. I want it to be as easy as possible for someone who doesn't have any experience with coding.
|
Hyrule18974 Posts
On April 07 2017 04:48 travis wrote:It's assembly time in my current programming class. For the current project we have to convert a couple different C programs to assembly. I am sure I will need help from you guys  Which assembly?
|
On April 07 2017 05:20 tofucake wrote:Show nested quote +On April 07 2017 04:48 travis wrote:It's assembly time in my current programming class. For the current project we have to convert a couple different C programs to assembly. I am sure I will need help from you guys  Which assembly?
I don't know the differences. Does "Y86" answer that question?
|
On April 07 2017 07:35 travis wrote:Show nested quote +On April 07 2017 05:20 tofucake wrote:On April 07 2017 04:48 travis wrote:It's assembly time in my current programming class. For the current project we have to convert a couple different C programs to assembly. I am sure I will need help from you guys  Which assembly? I don't know the differences. Does "Y86" answer that question?
x86 but yes. There's a bit more to it than that depending on what generation of intel processor you're running it on as well.
How strict is the grading on these assignments? Are you limited to a certain number of instructions?
|
85% of the grade is just making the program have the same output for tests as the corresponding C program
10% is for style
5% is for code efficiency
the only limit i see on instruction use is that if we are calling a function we must use call and not jmp
|
|
we've already been informed that we will horribly fail the tests if we try to do that
(I have no idea why, prof may have mentioned why but I can't remember the reasons)
|
want to verify my understanding of combinatorics
the question i am given is that of "three-peat" combinations
we have an alphabet: {a, b, c}
We have words that are "threepeats", such that every n-size word word begins and ends with the same 3(floor of n/3) letters in the same order. For example, a threepeat word is "abcbbaabc", or "aabbcaa".
Why it's called a "threepeat" when the repeated sequence isn't necessarily 3 is beyond me.
Anyways we are asked for the total combinations of words possible for given n-lengths.
I want to verify that the way I solve this is with
x= [floor of (n/2)] (the size of the repeated segment) y = n - 2x (the size of the middle segment)
then do 3^x * 3^y
|
I think I am understanding this correctly if I say the repeating part can be between 1 and floor(n/2) length, correct? If that's so, the formula is wrong:
Firstly, I am assuming the middle bit can only be in the same alphabet of 3 letters. Then the middle bit doesn't have y^x combinations, but 3^y. This gives you 3^x * 3^y = 3^(x + y) = 3^(n - x) possible combinations. This makes perfect sense, right. Because the only part you restrict is the final part with length x, which has to be exactly the same as the first x characters. So you have complete freedom over the first n-x characters, which can be chosen from your alphabet of 3 letters.
However, you're also forgetting to sum them: you have repeating parts of 1 letter, of 2 letters, of ... floor(n/2) letters, all of which have 3^(n-i) possible combinations. So to get all combinations, you have to do \Sum_{i=1}^{floor(n/2)} 3^(n - i).
But even then, you still have a problem with replacement in some corner cases. Consider for instance: Let n=6, and the sentence be aaaaaa. This is counted 3 times under the above system: once for the repeated seqence aaa (x=3, y=0), once for the repeated sequence aa (x=2, y=2) and once for the repeated sequence a (x=1, y=4)
I will leave it as an exercise for you how you can solve this.
E: you ninja edited a fix in there. So you already caught the first bit (but not the simplification or the rest).
|
|
|
|